control: tag -1 +patch

Hello,

On Mon 09 Jul 2018 at 10:48AM +0100, Ian Jackson wrote:

> My fix for #903132

(which is really nice, thank you)

> has arguably made things worse for a different use case: if the user
> goes straight from (i) gbp without dgit, to (ii) gdr with dgit, then
> the new pseudomerge generation cannot work.  So there will be a new
> message about that.

How offputting will this message be?  Sorry, I don't have a convenient
test case, since I always upload with dgit ;)

I don't think we need to document the expected message explicitly if
there is no action the user needs to take other than using --overwrite
and possibly -fdiverged.

> But also, there will be a new `diverged' snag at the time of git
> debrebase convert-from-gbp, if the user has ever done dgit fetch sid.
> In that case the user of gdr 5.8 will have to specify -fdiverged to
> convert-from-gbp.
>
> In both cases they will also have to tell dgit --overwrite, just as
> they would for 5.7 and earlier.
>
> It might be possible to find a suitable parent to overwrite with a
> pseudomerge, provided the user has done `dgit fetch sid'.  The
> basic recipe would be to check that the last maintainer view tag
> corresponds to dgit/dgit/sid (except for debian/patches).
>
> But this is complicated and fiddly.  I suggest that we document this
> problem, instead.

Attached patch does this.  Since the case is so precisely specified, I
opted not to clutter the manpage with an explanation of exactly why
-fdiverged is needed.

-- 
Sean Whitton
From 2c7d02ff627caaf687e3486d4203e921da88d686 Mon Sep 17 00:00:00 2001
From: Sean Whitton <spwhit...@spwhitton.name>
Date: Sat, 27 Oct 2018 13:40:26 -0700
Subject: [PATCH] dgit-maint-debrebase(7): account for case discussed in
 #903377

Signed-off-by: Sean Whitton <spwhit...@spwhitton.name>
---
 dgit-maint-debrebase.7.pod | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/dgit-maint-debrebase.7.pod b/dgit-maint-debrebase.7.pod
index e5abe17..e3d557a 100644
--- a/dgit-maint-debrebase.7.pod
+++ b/dgit-maint-debrebase.7.pod
@@ -269,6 +269,11 @@ patches applied.  Use
 
 =back
 
+If you were not previously using dgit to upload your package (i.e. you
+were not using the workflow described in dgit-maint-gbp(7)), and you
+happen to have run B<dgit fetch sid> in this clone of the repository,
+you will need to pass I<--fdiverged> to this command.
+
 =item (C) There is a delta queue, and patches are applied.
 
 Use
@@ -442,6 +447,12 @@ cowbuilder>.
 Upload with B<dgit push> or B<dgit push-source>.  Remember to pass
 I<--new> if the package is new in the target suite.
 
+In some cases where you used B<git debrebase convert-from-gbp> since
+the last upload, it is not possible for dgit to make your history
+fast-forwarding from the history on B<dgit-repos>.  In such cases you
+will require I<--overwrite>.  Try pushing without this option first,
+and then dgit will suggest using it if it is needed.
+
 Right before uploading, if you did not just already do so, you might
 want to have git-debrebase(1) shuffle your branch such that the Debian
 delta queue appears right at the tip of the branch you will push:
-- 
2.11.0

Attachment: signature.asc
Description: PGP signature

Reply via email to