Diff
Not logged in

Differences From:

File tools/lib/fossil.tcl part of check-in [7b2619b7ef] - Unhacked the fossil backend. IOW reworked the API and made it nicer, more structured, better command and option names. Gave the internals more structure, and simplified the handling of -breakat (old -stopat breakpoint). Updated users, and updated the user visible switches as well. Added a -h switch for help. by aku on 2007-09-13 08:02:26. [view]

To:

File tools/lib/fossil.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]

@@ -63,11 +63,13 @@
     return
 }
 
 proc ::vc::fossil::ws::begin {origin} {
-    variable rp [file normalize [fileutil::tempfile import2_fsl_rp_]]
+    variable base [file normalize $origin]
+    variable rp   [file normalize [fileutil::tempfile import2_fsl_rp_]]
 
     cd $origin
+
     dova new  $rp ; # create and ...
     dova open $rp ; # ... connect
 
     write 0 fossil "Repository: $rp"
@@ -82,8 +84,11 @@
 }
 
 proc ::vc::fossil::ws::commit {cset user timestamp message} {
     variable lastuuid
+    variable base
+
+    cd $base
 
     # Commit the current state of the workspace. Scan for new and
     # removed files and issue the appropriate fossil add/rm commands
     # before actually comitting.
@@ -201,8 +206,9 @@
     variable saveto  {} ; # Do not save commit message
     variable appname {} ; # Name of importer application using the package.
     variable ignore  {} ; # No files to ignore.
 
+    variable base     {} ; # Workspace directory
     variable rp       {} ; # Repository the package works on.
     variable lastuuid {} ; # Uuid of last imported changeset.
 
     namespace export configure begin done commit