@matheusbsbs / matheus-bagliano / commits / 577e9fcad2
Fork 0

git svn: fix --revision when fetching deleted paths

When using the -r/--revision argument to fetch deleted history, calling SVN::Ra::get_log() from an SVN::Ra object initialized to track the deleted URL will fail. This regression was introduced in: commit 4aacaeb3dc82bb6479e70e120053dc27a399460e "fix shallow clone when upstream revision is too new" We now ignore errors from SVN::Ra::get_log() here because using --revision will always override the value of $head here if (and only if) we're tracking deleted directories. Signed-off-by: Eric Wong <normalperson@yhbt.net>

Eric Wong committed Dec 21, 2009 at 02:06 UTC 577e9fcad2c8968846b365226b89778050496a78
1 file changed +5 -1
git-svn.perl
+5 -1
@@ -1741,7 +1741,11 @@ sub fetch_all {
1741 my $ra = Git::SVN::Ra->new($url);
1742 my $uuid = $ra->get_uuid;
1743 my $head = $ra->get_latest_revnum;
1744 - $ra->get_log("", $head, 0, 1, 0, 1, sub { $head = $_[1] });
1744 +
1745 + # ignore errors, $head revision may not even exist anymore
1746 + eval { $ra->get_log("", $head, 0, 1, 0, 1, sub { $head = $_[1] }) };
1747 + warn "W: $@\n" if $@;
1748 +
1749 my $base = defined $fetch ? $head : 0;
1750
1751 # read the max revs for wildcard expansion (branches/*, tags/*)