Fossil SCM
Cleaned up the creation of the workspace directory.
Commit
2740b48b6323093e9abcb57e3bcc90d8dd503bac
Parent
1593006ef37f4dc…
1 file changed
+18
-34
+18
-34
| --- tools/lib/cvs.tcl | ||
| +++ tools/lib/cvs.tcl | ||
| @@ -68,34 +68,24 @@ | ||
| 68 | 68 | } |
| 69 | 69 | return 1 |
| 70 | 70 | } |
| 71 | 71 | |
| 72 | 72 | proc ::vc::cvs::ws::begin {src} { |
| 73 | - variable project | |
| 74 | - | |
| 75 | - set src [file normalize $src] | |
| 76 | 73 | if {![check $src msg]} { return -code error $msg } |
| 77 | 74 | |
| 78 | 75 | DefBase $src |
| 79 | 76 | MakeTimeline [ScanArchives [files::find [RootPath]]] |
| 80 | 77 | |
| 81 | 78 | # OLD api calls ... TODO rework for more structure ... |
| 82 | 79 | csets ; # Group changes into sets |
| 83 | 80 | rtree ; # Build revision tree (trunk only right now). |
| 84 | 81 | |
| 85 | - set w [workspace] ; # OLD api ... TODO inline | |
| 86 | - if {$project ne ""} { | |
| 87 | - set w $w/$project | |
| 88 | - file mkdir $w | |
| 89 | - } | |
| 90 | - return $w | |
| 82 | + return [MakeWorkspace] | |
| 91 | 83 | } |
| 92 | 84 | |
| 93 | 85 | proc ::vc::cvs::ws::done {} { |
| 94 | - variable cwd | |
| 95 | - variable workspace | |
| 96 | - cd $cwd | |
| 86 | + variable workspace | |
| 97 | 87 | file delete -force $workspace |
| 98 | 88 | return |
| 99 | 89 | } |
| 100 | 90 | |
| 101 | 91 | proc ::vc::cvs::ws::foreach {cv script} { |
| @@ -223,10 +213,23 @@ | ||
| 223 | 213 | if {$state eq "dead"} {return "R"} ; # Removed |
| 224 | 214 | if {$rev eq "1.1"} {return "A"} ; # Added |
| 225 | 215 | return "M" ; # Modified |
| 226 | 216 | } |
| 227 | 217 | |
| 218 | +proc ::vc::cvs::ws::MakeWorkspace {} { | |
| 219 | + variable project | |
| 220 | + variable workspace [fileutil::tempfile importF_cvs_ws_] | |
| 221 | + | |
| 222 | + set w $workspace | |
| 223 | + if {$project ne ""} { append w /$project } | |
| 224 | + | |
| 225 | + file delete $workspace | |
| 226 | + file mkdir $w | |
| 227 | + | |
| 228 | + write 0 cvs "Workspace: $workspace" | |
| 229 | + return $w | |
| 230 | +} | |
| 228 | 231 | |
| 229 | 232 | |
| 230 | 233 | # Group single changes into changesets |
| 231 | 234 | |
| 232 | 235 | proc ::vc::cvs::ws::csets {} { |
| @@ -313,22 +316,10 @@ | ||
| 313 | 316 | |
| 314 | 317 | variable rtree {} |
| 315 | 318 | variable ntrunk 0 |
| 316 | 319 | } |
| 317 | 320 | |
| 318 | -proc ::vc::cvs::ws::workspace {} { | |
| 319 | - variable cwd [pwd] | |
| 320 | - variable workspace [fileutil::tempfile importF_cvs_ws_] | |
| 321 | - file delete $workspace | |
| 322 | - file mkdir $workspace | |
| 323 | - | |
| 324 | - write 0 cvs "Workspace: $workspace" | |
| 325 | - | |
| 326 | - cd $workspace ; # Checkouts go here. | |
| 327 | - return $workspace | |
| 328 | -} | |
| 329 | - | |
| 330 | 321 | proc ::vc::cvs::ws::wssetup {c} { |
| 331 | 322 | variable csets |
| 332 | 323 | variable base |
| 333 | 324 | variable project |
| 334 | 325 | |
| @@ -393,18 +384,10 @@ | ||
| 393 | 384 | |
| 394 | 385 | # Provide metadata about the changeset the backend may wish to have |
| 395 | 386 | return [list $u $s $cm] |
| 396 | 387 | } |
| 397 | 388 | |
| 398 | -namespace eval ::vc::cvs::ws { | |
| 399 | - # Workspace where checkouts happen | |
| 400 | - # Current working directory to go back to after the import. | |
| 401 | - | |
| 402 | - variable workspace {} | |
| 403 | - variable cwd {} | |
| 404 | -} | |
| 405 | - | |
| 406 | 389 | proc ::vc::cvs::ws::foreach_cset {cv node script} { |
| 407 | 390 | upvar 1 $cv c |
| 408 | 391 | variable rtree |
| 409 | 392 | |
| 410 | 393 | set c $node |
| @@ -536,16 +519,17 @@ | ||
| 536 | 519 | } |
| 537 | 520 | |
| 538 | 521 | # ----------------------------------------------------------------------------- |
| 539 | 522 | |
| 540 | 523 | namespace eval ::vc::cvs::ws { |
| 541 | - variable base {} ; # Toplevel repository directory | |
| 542 | - variable project {} ; # Sub directory to limit the import to. | |
| 524 | + variable base {} ; # Toplevel repository directory | |
| 525 | + variable project {} ; # Sub directory to limit the import to. | |
| 526 | + variable workspace {} ; # Directory to checkout changesets to. | |
| 543 | 527 | |
| 544 | 528 | namespace export configure begin done foreach ncsets checkout |
| 545 | 529 | } |
| 546 | 530 | |
| 547 | 531 | # ----------------------------------------------------------------------------- |
| 548 | 532 | # Ready |
| 549 | 533 | |
| 550 | 534 | package provide vc::cvs::ws 1.0 |
| 551 | 535 | return |
| 552 | 536 |
| --- tools/lib/cvs.tcl | |
| +++ tools/lib/cvs.tcl | |
| @@ -68,34 +68,24 @@ | |
| 68 | } |
| 69 | return 1 |
| 70 | } |
| 71 | |
| 72 | proc ::vc::cvs::ws::begin {src} { |
| 73 | variable project |
| 74 | |
| 75 | set src [file normalize $src] |
| 76 | if {![check $src msg]} { return -code error $msg } |
| 77 | |
| 78 | DefBase $src |
| 79 | MakeTimeline [ScanArchives [files::find [RootPath]]] |
| 80 | |
| 81 | # OLD api calls ... TODO rework for more structure ... |
| 82 | csets ; # Group changes into sets |
| 83 | rtree ; # Build revision tree (trunk only right now). |
| 84 | |
| 85 | set w [workspace] ; # OLD api ... TODO inline |
| 86 | if {$project ne ""} { |
| 87 | set w $w/$project |
| 88 | file mkdir $w |
| 89 | } |
| 90 | return $w |
| 91 | } |
| 92 | |
| 93 | proc ::vc::cvs::ws::done {} { |
| 94 | variable cwd |
| 95 | variable workspace |
| 96 | cd $cwd |
| 97 | file delete -force $workspace |
| 98 | return |
| 99 | } |
| 100 | |
| 101 | proc ::vc::cvs::ws::foreach {cv script} { |
| @@ -223,10 +213,23 @@ | |
| 223 | if {$state eq "dead"} {return "R"} ; # Removed |
| 224 | if {$rev eq "1.1"} {return "A"} ; # Added |
| 225 | return "M" ; # Modified |
| 226 | } |
| 227 | |
| 228 | |
| 229 | |
| 230 | # Group single changes into changesets |
| 231 | |
| 232 | proc ::vc::cvs::ws::csets {} { |
| @@ -313,22 +316,10 @@ | |
| 313 | |
| 314 | variable rtree {} |
| 315 | variable ntrunk 0 |
| 316 | } |
| 317 | |
| 318 | proc ::vc::cvs::ws::workspace {} { |
| 319 | variable cwd [pwd] |
| 320 | variable workspace [fileutil::tempfile importF_cvs_ws_] |
| 321 | file delete $workspace |
| 322 | file mkdir $workspace |
| 323 | |
| 324 | write 0 cvs "Workspace: $workspace" |
| 325 | |
| 326 | cd $workspace ; # Checkouts go here. |
| 327 | return $workspace |
| 328 | } |
| 329 | |
| 330 | proc ::vc::cvs::ws::wssetup {c} { |
| 331 | variable csets |
| 332 | variable base |
| 333 | variable project |
| 334 | |
| @@ -393,18 +384,10 @@ | |
| 393 | |
| 394 | # Provide metadata about the changeset the backend may wish to have |
| 395 | return [list $u $s $cm] |
| 396 | } |
| 397 | |
| 398 | namespace eval ::vc::cvs::ws { |
| 399 | # Workspace where checkouts happen |
| 400 | # Current working directory to go back to after the import. |
| 401 | |
| 402 | variable workspace {} |
| 403 | variable cwd {} |
| 404 | } |
| 405 | |
| 406 | proc ::vc::cvs::ws::foreach_cset {cv node script} { |
| 407 | upvar 1 $cv c |
| 408 | variable rtree |
| 409 | |
| 410 | set c $node |
| @@ -536,16 +519,17 @@ | |
| 536 | } |
| 537 | |
| 538 | # ----------------------------------------------------------------------------- |
| 539 | |
| 540 | namespace eval ::vc::cvs::ws { |
| 541 | variable base {} ; # Toplevel repository directory |
| 542 | variable project {} ; # Sub directory to limit the import to. |
| 543 | |
| 544 | namespace export configure begin done foreach ncsets checkout |
| 545 | } |
| 546 | |
| 547 | # ----------------------------------------------------------------------------- |
| 548 | # Ready |
| 549 | |
| 550 | package provide vc::cvs::ws 1.0 |
| 551 | return |
| 552 |
| --- tools/lib/cvs.tcl | |
| +++ tools/lib/cvs.tcl | |
| @@ -68,34 +68,24 @@ | |
| 68 | } |
| 69 | return 1 |
| 70 | } |
| 71 | |
| 72 | proc ::vc::cvs::ws::begin {src} { |
| 73 | if {![check $src msg]} { return -code error $msg } |
| 74 | |
| 75 | DefBase $src |
| 76 | MakeTimeline [ScanArchives [files::find [RootPath]]] |
| 77 | |
| 78 | # OLD api calls ... TODO rework for more structure ... |
| 79 | csets ; # Group changes into sets |
| 80 | rtree ; # Build revision tree (trunk only right now). |
| 81 | |
| 82 | return [MakeWorkspace] |
| 83 | } |
| 84 | |
| 85 | proc ::vc::cvs::ws::done {} { |
| 86 | variable workspace |
| 87 | file delete -force $workspace |
| 88 | return |
| 89 | } |
| 90 | |
| 91 | proc ::vc::cvs::ws::foreach {cv script} { |
| @@ -223,10 +213,23 @@ | |
| 213 | if {$state eq "dead"} {return "R"} ; # Removed |
| 214 | if {$rev eq "1.1"} {return "A"} ; # Added |
| 215 | return "M" ; # Modified |
| 216 | } |
| 217 | |
| 218 | proc ::vc::cvs::ws::MakeWorkspace {} { |
| 219 | variable project |
| 220 | variable workspace [fileutil::tempfile importF_cvs_ws_] |
| 221 | |
| 222 | set w $workspace |
| 223 | if {$project ne ""} { append w /$project } |
| 224 | |
| 225 | file delete $workspace |
| 226 | file mkdir $w |
| 227 | |
| 228 | write 0 cvs "Workspace: $workspace" |
| 229 | return $w |
| 230 | } |
| 231 | |
| 232 | |
| 233 | # Group single changes into changesets |
| 234 | |
| 235 | proc ::vc::cvs::ws::csets {} { |
| @@ -313,22 +316,10 @@ | |
| 316 | |
| 317 | variable rtree {} |
| 318 | variable ntrunk 0 |
| 319 | } |
| 320 | |
| 321 | proc ::vc::cvs::ws::wssetup {c} { |
| 322 | variable csets |
| 323 | variable base |
| 324 | variable project |
| 325 | |
| @@ -393,18 +384,10 @@ | |
| 384 | |
| 385 | # Provide metadata about the changeset the backend may wish to have |
| 386 | return [list $u $s $cm] |
| 387 | } |
| 388 | |
| 389 | proc ::vc::cvs::ws::foreach_cset {cv node script} { |
| 390 | upvar 1 $cv c |
| 391 | variable rtree |
| 392 | |
| 393 | set c $node |
| @@ -536,16 +519,17 @@ | |
| 519 | } |
| 520 | |
| 521 | # ----------------------------------------------------------------------------- |
| 522 | |
| 523 | namespace eval ::vc::cvs::ws { |
| 524 | variable base {} ; # Toplevel repository directory |
| 525 | variable project {} ; # Sub directory to limit the import to. |
| 526 | variable workspace {} ; # Directory to checkout changesets to. |
| 527 | |
| 528 | namespace export configure begin done foreach ncsets checkout |
| 529 | } |
| 530 | |
| 531 | # ----------------------------------------------------------------------------- |
| 532 | # Ready |
| 533 | |
| 534 | package provide vc::cvs::ws 1.0 |
| 535 | return |
| 536 |