From: Matthias Urlichs Date: Tue, 28 Jun 2005 17:58:40 +0000 (+0200) Subject: Local cvsimport fixups X-Git-Tag: v0.99~71^2^2~19 X-Git-Url: https://git.verplant.org/?a=commitdiff_plain;h=f65ae603db8ffc36e25cc835eeffcfe4909c3148;p=git.git Local cvsimport fixups --- diff --git a/git-cvsimport-script b/git-cvsimport-script index d6117561..58ded8a9 100755 --- a/git-cvsimport-script +++ b/git-cvsimport-script @@ -61,6 +61,8 @@ package CVSconn; # Basic CVS dialog. # We're only interested in connecting and downloading, so ... +use POSIX qw(strftime dup2); + sub new { my($what,$repo,$subdir) = @_; $what=ref($what) if ref($what); @@ -571,7 +573,9 @@ while() { # VERSION:1.96->1.96.2.1 my $init = ($2 eq "INITIAL"); my $fn = $1; - my $data = $cvs->file($fn,$3); + my $rev = $3; + $fn =~ s#^/+##; + my $data = $cvs->file($fn,$rev); print "".($init ? "New" : "Update")." $fn: ".length($data)." bytes.\n"; mkpath(dirname($fn),$opt_v); open(F,"> ./$fn") @@ -583,7 +587,9 @@ while() { chmod(pmode($cvs->{'mode'}), $fn); push(@new,$fn); # may be resurrected! } elsif($state == 9 and /^\s+(\S+):\d(?:\.\d+)+->(\d(?:\.\d+)+)\(DEAD\)\s*$/) { - push(@old,$1); + my $fn = $1; + $fn =~ s#^/+##; + push(@old,$fn); } elsif($state == 9 and /^\s*$/) { $state = 10; } elsif(($state == 9 or $state == 10) and /^-+$/) {