On Sat, 24 Jun 2006 23:13:08 +1200 Martin Langhoff wrote: > Two bugs had slipped in the "keep one index per branch during import" > patch. Both incremental imports and new branches would see an > empty tree for their initial commit. Now we cover all the relevant > cases, checking whether we actually need to setup the index before > preparing the actual commit, and doing it. > > Signed-off-by: Martin Langhoff <martin@xxxxxxxxxxxxxxx> > > --- > git-cvsimport.perl | 19 +++++++++++++++++-- > 1 files changed, 17 insertions(+), 2 deletions(-) > > diff --git a/git-cvsimport.perl b/git-cvsimport.perl > old mode 100644 > new mode 100755 > index d961b7b..1c1fd02 > --- a/git-cvsimport.perl > +++ b/git-cvsimport.perl > @@ -813,11 +813,26 @@ while(<CVS>) { > unless ($index{$branch}) { > $index{$branch} = tmpnam(); > $ENV{GIT_INDEX_FILE} = $index{$branch}; > - system("git-read-tree", $branch); > + } > + if ($ancestor) { > + system("git-read-tree", $ancestor); > die "read-tree failed: $?\n" if $?; > } else { > + unless ($index{$branch}) { This seems to be dead code - even if $index{$branch} was not set, it will be set inside "unless ($index{$branch})" above. Or there is another bug here? > + $index{$branch} = tmpnam(); > + $ENV{GIT_INDEX_FILE} = $index{$branch}; > + system("git-read-tree", $branch); > + die "read-tree failed: $?\n" if $?; > + } > + } > + } else { > + # just in case > + unless ($index{$branch}) { > + $index{$branch} = tmpnam(); > $ENV{GIT_INDEX_FILE} = $index{$branch}; > - } > + system("git-read-tree", $branch); > + die "read-tree failed: $?\n" if $?; > + } > } > $last_branch = $branch if $branch ne $last_branch; > $state = 9;
Attachment:
pgpy6ZOTdsy3Q.pgp
Description: PGP signature