Differences From:
File
tools/lib/importcvs.tcl
part of check-in
[d8c18fc148]
- Reworked the CVS handling code to have a simpler API, more like the reworked Fossil API.
The API now has a form where adding the handling of branches should not require complex
changes in the import controller any longer. Extended the system to allow the user to
restrict the importing to a sub-directory of the chosen repository, via the new switch
--project. This is required to pull a SF CVS repository apart into the various projects
it may have. Example: Under Tcl we have 3 projects, namely Tcl itself, sampleextension,
and Thread.
by
aku on
2007-09-17 00:56:40.
[view]
To:
File
tools/lib/importcvs.tcl
part of check-in
[cbbf9a7575]
- Got rid of the explicit revision tree and rephrased the trunk processing
to use a loop which is more self-explanatory. Started to add in code needed
when we process the branches as well, currently they will have now effect.
by
aku on
2007-09-20 07:14:44.
[view]
@@ -61,16 +61,16 @@
# Import the CVS repository found at directory 'src' into the new
# fossil repository at 'dst'.
proc ::vc::fossil::import::cvs::run {src dst} {
- #B map::set {} {}
+ map::set {} {}
set src [file normalize $src]
set dst [file normalize $dst]
set ws [cvs::begin $src]
fossil::begin $ws
- stats::setup [cvs::ncsets -import] [cvs::ncsets]
+ stats::setup [cvs::nimportable] [cvs::ncsets]
cvs::foreach cset {
Import1 $cset
}
@@ -96,9 +96,9 @@
return
}
proc ::vc::fossil::import::cvs::ImportCS {cset} {
- #B fossil::setup [map::get [cvs::parentOf $cset]]
+ fossil::setup [map::get [cvs::parentOf $cset]]
lassign [cvs::checkout $cset] user timestamp message
lassign [fossil::commit $cset $user $timestamp $message] uuid ad rm ch
write 2 import "== +${ad}-${rm}*${ch}"
map::set $cset $uuid