summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--debian/changelog2
-rwxr-xr-xdgit9
2 files changed, 11 insertions, 0 deletions
diff --git a/debian/changelog b/debian/changelog
index 54583cf..7bc0a11 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -77,6 +77,8 @@ dgit (1.5~~) unstable; urgency=medium
* Tidy up refs/dgit-fetch/ after dgit fetch (if successful).
* Fix handling of in-archive copies.
* Don't break if user has push.followTags=true. Closes:#827878.
+ * Arrange for the special dgit remote to be skipped by git fetch --all
+ etc. Closes:#827892.
Test suite:
* When sbuild fails, do not crash due to sed not finding the log
diff --git a/dgit b/dgit
index a96f471..34152ee 100755
--- a/dgit
+++ b/dgit
@@ -2136,6 +2136,8 @@ sub mergeinfo_version ($) {
}
sub fetch_from_archive () {
+ ensure_setup_existing_tree();
+
# Ensures that lrref() is what is actually in the archive, one way
# or another, according to us - ie this client's
# appropritaely-updated archive view. Also returns the commit id.
@@ -2535,6 +2537,13 @@ sub setup_useremail (;$) {
$setup->('name', 'DEBFULLNAME');
}
+sub ensure_setup_existing_tree () {
+ my $k = "remote.$remotename.skipdefaultupdate";
+ my $c = git_get_config $k;
+ return if defined $c;
+ set_local_git_config $k, 'true';
+}
+
sub setup_new_tree () {
setup_mergechangelogs();
setup_useremail();