diff options
author | Eric Wong <normalperson@yhbt.net> | 2009-12-21 02:06:04 -0800 |
---|---|---|
committer | Eric Wong <normalperson@yhbt.net> | 2009-12-21 02:32:39 -0800 |
commit | 577e9fcad2c8968846b365226b89778050496a78 (patch) | |
tree | ef5429b5a0e1fc13c57c734ab340d07e4597c882 /git-svn.perl | |
parent | ab0964d951e4ea88f9ea2cbb88388c1bcd4ae911 (diff) | |
download | git-577e9fcad2c8968846b365226b89778050496a78.tar.gz |
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>
Diffstat (limited to 'git-svn.perl')
-rwxr-xr-x | git-svn.perl | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/git-svn.perl b/git-svn.perl index d362de7364..a6f5061c3c 100755 --- a/git-svn.perl +++ b/git-svn.perl @@ -1741,7 +1741,11 @@ sub fetch_all { my $ra = Git::SVN::Ra->new($url); my $uuid = $ra->get_uuid; my $head = $ra->get_latest_revnum; - $ra->get_log("", $head, 0, 1, 0, 1, sub { $head = $_[1] }); + + # ignore errors, $head revision may not even exist anymore + eval { $ra->get_log("", $head, 0, 1, 0, 1, sub { $head = $_[1] }) }; + warn "W: $@\n" if $@; + my $base = defined $fetch ? $head : 0; # read the max revs for wildcard expansion (branches/*, tags/*) |