Andrew's git
/
gitweb.git
/ diff
summary
|
log
|
commit
| diff |
tree
commit
grep
author
committer
pickaxe
?
re
git-svn: avoid extra get_log calls when refspecs are added for fetching
author
Eric Wong
<normalperson@yhbt.net>
Thu, 1 Feb 2007 12:26:00 +0000
(
04:26
-0800)
committer
Eric Wong
<normalperson@yhbt.net>
Fri, 23 Feb 2007 08:57:11 +0000
(
00:57
-0800)
Since fetch_loop_common starts from the lowest revision number
in a group of Git::SVN objects; we want to avoid refetching
get_log for current users for things we've already cut it.
Signed-off-by: Eric Wong <normalperson@yhbt.net>
git-svn.perl
patch
|
blob
|
history
raw
|
patch
| inline |
side by side
(parent:
ef70de9
)
diff --git
a/git-svn.perl
b/git-svn.perl
index 58d0600f891bcdfe12479728b3d8760e339d5360..8c24012e7bda810f40c80f372f28d10a55423c22 100755
(executable)
--- a/
git-svn.perl
+++ b/
git-svn.perl
@@
-2370,7
+2370,12
@@
sub gs_fetch_loop_common {
skip_unknown_revs($err);
};
foreach my $gs (@gs) {
- $self->get_log([$gs->{path}], $min, $max, 0, 1, 1, sub
+ my $min_r = $min;
+ my $rdb_max = $gs->rev_db_max;
+ next if $rdb_max >= $max;
+ $min_r = $rdb_max + 1 if ($rdb_max > $min_r);
+ $self->get_log([$gs->{path}], $min_r, $max,
+ 0, 1, 1, sub
{ my ($paths, $rev) = @_;
push @{$revs{$rev}},
[ $gs,