summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--debian/changelog4
-rwxr-xr-xdgit5
2 files changed, 9 insertions, 0 deletions
diff --git a/debian/changelog b/debian/changelog
index 3216e4a..2c30556 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -10,6 +10,10 @@ dgit (5.2~) unstable; urgency=medium
Closes:#883340.
* When quilt fixup fails because of discrepancies, print a
git diff rune which will show them. Closes:#865446.
+ * When fetch or push wants git fetch (other than in a situation where it
+ happes to be a noop) but --dry-run was specified, fail with an
+ explanation, rather than looping with a false coplaint about git
+ fetch. Closes:#871317.
--
diff --git a/dgit b/dgit
index 961d974..3409e18 100755
--- a/dgit
+++ b/dgit
@@ -2757,6 +2757,11 @@ END
my $want = $wantr{$rrefname};
next if $got eq $want;
if (!defined $objgot{$want}) {
+ fail <<END unless act_local();
+--dry-run specified but we actually wanted the results of git fetch,
+so this is not going to work. Try running dgit fetch first,
+or using --damp-run instead of --dry-run.
+END
print STDERR <<END;
warning: git ls-remote suggests we want $lrefname
warning: and it should refer to $want