summaryrefslogtreecommitdiff
path: root/dgit
diff options
context:
space:
mode:
Diffstat (limited to 'dgit')
-rwxr-xr-xdgit32
1 files changed, 19 insertions, 13 deletions
diff --git a/dgit b/dgit
index 933c008..dc31ce1 100755
--- a/dgit
+++ b/dgit
@@ -2507,19 +2507,8 @@ sub ensure_we_have_orig () {
}
}
-sub git_fetch_us () {
- # Want to fetch only what we are going to use, unless
- # deliberately-not-ff, in which case we must fetch everything.
-
- my @specs = deliberately_not_fast_forward ? qw(tags/*) :
- map { "tags/$_" }
- (quiltmode_splitbrain
- ? (map { $_->('*',access_nomdistro) }
- \&debiantag_new, \&debiantag_maintview)
- : debiantags('*',access_nomdistro));
- push @specs, server_branch($csuite);
- push @specs, $rewritemap;
- push @specs, qw(heads/*) if deliberately_not_fast_forward;
+sub git_lrfetch_sane {
+ my (@specs) = @_;
# This is rather miserable:
# When git fetch --prune is passed a fetchspec ending with a *,
@@ -2650,6 +2639,23 @@ END
}
printdebug "git_fetch_us: git fetch --no-insane emulation complete\n",
Dumper(\%lrfetchrefs_f);
+}
+
+sub git_fetch_us () {
+ # Want to fetch only what we are going to use, unless
+ # deliberately-not-ff, in which case we must fetch everything.
+
+ my @specs = deliberately_not_fast_forward ? qw(tags/*) :
+ map { "tags/$_" }
+ (quiltmode_splitbrain
+ ? (map { $_->('*',access_nomdistro) }
+ \&debiantag_new, \&debiantag_maintview)
+ : debiantags('*',access_nomdistro));
+ push @specs, server_branch($csuite);
+ push @specs, $rewritemap;
+ push @specs, qw(heads/*) if deliberately_not_fast_forward;
+
+ git_lrfetch_sane @specs;
my %here;
my @tagpats = debiantags('*',access_nomdistro);