Package: dgit
Version: 4.0
Severity: wishlist
Tags: patch

Per Ian's suggestion, here is a patch to suggest
--deliberately-not-fast-forward for the first dgit push in various
of the tutorial manpages.

This trick originally due to Andrew Shadura -- thanks!

-- System Information:
Debian Release: 9.0
  APT prefers testing
  APT policy: (900, 'testing')
Architecture: amd64 (x86_64)

Kernel: Linux 4.9.0-1-amd64 (SMP w/4 CPU cores)
Locale: LANG=en_GB.utf8, LC_CTYPE=en_GB.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages dgit depends on:
ii  apt                               1.4~rc1
ii  ca-certificates                   20161130
ii  coreutils                         8.26-2
ii  curl                              7.52.1-2
ii  devscripts                        2.17.1
ii  dpkg-dev                          1.18.22
ii  dput-ng [dput]                    1.11
ii  git [git-core]                    1:2.11.0-2
ii  git-buildpackage                  0.8.12.2
ii  libdpkg-perl                      1.18.22
ii  libjson-perl                      2.90-1
ii  liblist-moreutils-perl            0.416-1+b1
ii  libperl5.24 [libdigest-sha-perl]  5.24.1-1
ii  libtext-glob-perl                 0.10-1
ii  libtext-iconv-perl                1.7-5+b4
ii  libwww-perl                       6.15-1
ii  perl                              5.24.1-1

Versions of packages dgit recommends:
ii  openssh-client [ssh-client]  1:7.4p1-6

Versions of packages dgit suggests:
ii  sbuild  0.73.0-4

-- no debconf information

-- 
Sean Whitton
From d7b2e66bb48ca723913ab98fe5c9dbb53b258519 Mon Sep 17 00:00:00 2001
From: Sean Whitton <[email protected]>
Date: Tue, 28 Feb 2017 09:45:02 -0700
Subject: [PATCH] dgit-*(7): --deliberately-not-fast-forward for first dgit
 push

Signed-off-by: Sean Whitton <[email protected]>
---
 dgit-maint-gbp.7.pod    | 7 +++++++
 dgit-maint-merge.7.pod  | 7 ++++++-
 dgit-maint-native.7.pod | 8 ++++++++
 dgit-sponsorship.7.pod  | 8 ++++++++
 4 files changed, 29 insertions(+), 1 deletion(-)

diff --git a/dgit-maint-gbp.7.pod b/dgit-maint-gbp.7.pod
index c31dfa5..3c438ab 100644
--- a/dgit-maint-gbp.7.pod
+++ b/dgit-maint-gbp.7.pod
@@ -111,6 +111,13 @@ want to follow it up with a push to alioth.
 You will need to pass I<--overwrite> if the previous upload was not
 performed with dgit.
 
+If this is first ever dgit push of the package, consider passing
+I<--deliberately-not-fast-forward> instead of I<--overwrite>.  This
+avoids introducing a new origin commit into the dgit view of your git
+history.  (This origin commit would represent the most recent non-dgit
+upload of the package, but this should already be represented in your
+git history.)
+
 =head1 INCORPORATING NMUS
 
 B<dgit pull> can't yet incorporate NMUs into patches-unapplied gbp
diff --git a/dgit-maint-merge.7.pod b/dgit-maint-merge.7.pod
index 3da1b78..1516c72 100644
--- a/dgit-maint-merge.7.pod
+++ b/dgit-maint-merge.7.pod
@@ -213,7 +213,12 @@ To achieve this, you might need to delete
 I<debian/source/local-options>.  One way to have dgit check your
 progress is to run B<dgit build-source>.
 
-The first dgit push will require I<--overwrite>.
+The first dgit push will require I<--overwrite>.  If this is the first
+ever dgit push of the package, consider passing
+I<--deliberately-not-fast-forward> instead of I<--overwrite>.  This
+avoids introducing a new origin commit into your git history.  (This
+origin commit would represent the most recent non-dgit upload of the
+package, but this should already be represented in your git history.)
 
 =head1 SOURCE PACKAGE CONFIGURATION
 
diff --git a/dgit-maint-native.7.pod b/dgit-maint-native.7.pod
index 03aee59..34aaaff 100644
--- a/dgit-maint-native.7.pod
+++ b/dgit-maint-native.7.pod
@@ -78,6 +78,14 @@ so that your history,
 which will be pushed to the dgit git server,
 is fast forward from the dgit archive view.
 
+Alternatively,
+if this was the first ever dgit push of the package,
+you can avoid this merge commit by
+passing C<--deliberately-not-fast-forward>.
+instead of C<--overwrite>.
+This avoids introducing a new origin commit into
+your git history.
+
 =head1 SUBSEQUENT PUSHES
 
 =over 4
diff --git a/dgit-sponsorship.7.pod b/dgit-sponsorship.7.pod
index 8d5b72d..0808329 100644
--- a/dgit-sponsorship.7.pod
+++ b/dgit-sponsorship.7.pod
@@ -257,6 +257,14 @@ you may need to pass
 C<--overwrite>
 to dgit.
 
+Alternatively,
+if this was the first ever dgit push of the package,
+you can pass C<--deliberately-not-fast-forward>
+instead of C<--overwrite>.
+This avoids introducing a new origin commit
+into the dgit view of
+the sponsee's git history
+which is unnecessary and could be confusing.
 
 =head1 SPONSORING A NON-GIT-USING SPONSEE
 
-- 
2.11.0

Attachment: signature.asc
Description: PGP signature

Reply via email to