X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=git-svnimport.perl;h=f17d5a27c82a31b82f066540ed40c83fc66cf91b;hb=810255fd12536d296597a0366f514bf65c2e10f6;hp=6e3a44a2bc9fbf170db45a7e390d6ac8ffbb6f02;hpb=92e802c6ccb96d1b5e8561b0a136d43d82253293;p=git.git diff --git a/git-svnimport.perl b/git-svnimport.perl index 6e3a44a2..f17d5a27 100755 --- a/git-svnimport.perl +++ b/git-svnimport.perl @@ -318,7 +318,7 @@ sub get_file($$$) { die $res->status_line." at $url\n"; } } else { - $name = $svn->file("/$svnpath",$rev); + $name = $svn->file("$svnpath",$rev); return undef unless defined $name; } @@ -546,23 +546,30 @@ sub commit { } } - if(@old) { - open my $F, "-|", "git-ls-files", "-z", @old or die $!; - @old = (); + while(@old) { + my @o1; + if(@old > 55) { + @o1 = splice(@old,0,50); + } else { + @o1 = @old; + @old = (); + } + open my $F, "-|", "git-ls-files", "-z", @o1 or die $!; + @o1 = (); local $/ = "\0"; while(<$F>) { chomp; - push(@old,$_); + push(@o1,$_); } close($F); - while(@old) { + while(@o1) { my @o2; - if(@old > 55) { - @o2 = splice(@old,0,50); + if(@o1 > 55) { + @o2 = splice(@o1,0,50); } else { - @o2 = @old; - @old = (); + @o2 = @o1; + @o1 = (); } system("git-update-index","--force-remove","--",@o2); die "Cannot remove files: $?\n" if $?;