Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Moved mount to rev, making dirdiff support extendable to other vcs |
---|---|
Downloads: | Tarball | ZIP archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
d0b469ea11e03a5adeaea3e44872f34b |
User & Date: | peter 2014-11-13 23:12:04.149 |
Context
2014-11-14
| ||
00:14 | Added SVN support to VFS and dirdiff check-in: 0827ab89b0 user: peter tags: trunk | |
2014-11-13
| ||
23:12 | Moved mount to rev, making dirdiff support extendable to other vcs check-in: d0b469ea11 user: peter tags: trunk | |
22:53 | Moved experiment to dirdiff src check-in: b94817f6ae user: peter tags: trunk | |
Changes
Changes to src/dirdiff.tcl.
︙ | ︙ | |||
1244 1245 1246 1247 1248 1249 1250 | set ::dirdiff(rightDir) "" } # Experiment to support -r for directory diff # Currently only Fossil is supported if {[info exists opts(doptrev1)] && $opts(doptrev1) ne ""} { set fullname $::dirdiff(leftDir) | | > > | | | | 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 | set ::dirdiff(rightDir) "" } # Experiment to support -r for directory diff # Currently only Fossil is supported if {[info exists opts(doptrev1)] && $opts(doptrev1) ne ""} { set fullname $::dirdiff(leftDir) set type [detectRevSystem $fullname] # Is this a revision system with dirdiff support? if {[info commands eskil::rev::${type}::mount] ne ""} { set revs [list $opts(doptrev1)] if {[info exists opts(doptrev2)] && $opts(doptrev2) ne ""} { lappend revs $opts(doptrev2) } set revs [eskil::rev::${type}::ParseRevs $fullname $revs] set rev1 [lindex $revs 0] set rev2 [lindex $revs 1] set d1 [eskil::rev::${type}::mount $fullname $rev1] set ::dirdiff(leftDir) $d1 if {$rev2 ne ""} { set d2 [eskil::rev::${type}::mount $fullname $rev2] set ::dirdiff(rightDir) $d2 } } } destroy .dirdiff DirDiff .dirdiff |
︙ | ︙ |
Changes to src/rev.tcl.
︙ | ︙ | |||
67 68 69 70 71 72 73 74 75 76 77 78 79 80 | # If no files are given, all edited files are reverted. # eskil::rev::XXX::viewLog {top filename revs} # # If implemented, enables the log feature when comparing revisions. # View log between displayed versions namespace eval eskil::rev::CVS {} namespace eval eskil::rev::RCS {} namespace eval eskil::rev::CT {} namespace eval eskil::rev::GIT {} namespace eval eskil::rev::FOSSIL {} namespace eval eskil::rev::SVN {} namespace eval eskil::rev::HG {} | > > > > > | 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 | # If no files are given, all edited files are reverted. # eskil::rev::XXX::viewLog {top filename revs} # # If implemented, enables the log feature when comparing revisions. # View log between displayed versions # eskil::rev::XXX::mount {dir rev} # # If implemented, directory diff can view revisions for this system. # Mounts a directory revision as a VFS, and returns the mount point namespace eval eskil::rev::CVS {} namespace eval eskil::rev::RCS {} namespace eval eskil::rev::CT {} namespace eval eskil::rev::GIT {} namespace eval eskil::rev::FOSSIL {} namespace eval eskil::rev::SVN {} namespace eval eskil::rev::HG {} |
︙ | ︙ | |||
1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 | } set gitmsg [string trim $gitmsg] if {$sts} { tk_messageBox -icon error -title "GIT revert error" -message $gitmsg \ -parent $top } } # View log between displayed versions proc eskil::rev::CVS::viewLog {top filename revs} { set cmd [list exec cvs -q log -N] if {[llength $revs] > 1} { lappend cmd -r[join $revs ":"] } else { | > > > > > | 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 | } set gitmsg [string trim $gitmsg] if {$sts} { tk_messageBox -icon error -title "GIT revert error" -message $gitmsg \ -parent $top } } # Mount a directory revision as a VFS, and return the mount point proc eskil::rev::FOSSIL::mount {dir rev} { return [vcsvfs::fossil::mount $dir $rev] } # View log between displayed versions proc eskil::rev::CVS::viewLog {top filename revs} { set cmd [list exec cvs -q log -N] if {[llength $revs] > 1} { lappend cmd -r[join $revs ":"] } else { |
︙ | ︙ |