Your message dated Mon, 03 Feb 2020 09:19:27 +0000
with message-id <[email protected]>
and subject line Bug#932954: fixed in dgit 9.10
has caused the Debian Bug report #932954,
regarding dgit-maint-{debrebase,merge}(7): fix several issues with the tarball
workflows
to be marked as done.
This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.
(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)
--
932954: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=932954
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Package: dgit
Version: 9.5
Tags: patch
Hello,
When Debianising a new package yesterday I discovered several issues
with the tarball workflows recommended in these two manpages. Detailed
in the commit messages of the attached three patches.
--
Sean Whitton
From 37d7bb9cfd2349f41639a4788b095dc4f2d4b0f3 Mon Sep 17 00:00:00 2001
From: Sean Whitton <[email protected]>
Date: Wed, 24 Jul 2019 20:05:34 +0100
Subject: [PATCH 1/3] d-m-{merge,debrebase}(7): Use an 'upstream/' tag prefix
in gbp.conf
This is a useful convention to distinguish actual upstream tags from
upstream tarball-representing tags created by the Debian package
maintainer.
Note that use of this convention is already recommended in section
"Using untagged upstream commits".
Signed-off-by: Sean Whitton <[email protected]>
---
dgit-maint-debrebase.7.pod | 4 +++-
dgit-maint-merge.7.pod | 4 +++-
2 files changed, 6 insertions(+), 2 deletions(-)
diff --git a/dgit-maint-debrebase.7.pod b/dgit-maint-debrebase.7.pod
index 9c9598bb..2ac70b57 100644
--- a/dgit-maint-debrebase.7.pod
+++ b/dgit-maint-debrebase.7.pod
@@ -181,7 +181,7 @@ Now create I<debian/gbp.conf>:
[DEFAULT]
upstream-branch = upstream
debian-branch = master
- upstream-tag = %(version)s
+ upstream-tag = upstream/%(version)s
sign-tags = True
pristine-tar = False
@@ -392,6 +392,8 @@ or if you have a working watch file
=back
+replacing I<1.2.3> with I<upstream/1.2.3> if you imported a tarball.
+
This invocation of git-debrebase(1) involves a git rebase. You may
need to resolve conflicts if the Debian delta queue does not apply
cleanly to the new upstream source.
diff --git a/dgit-maint-merge.7.pod b/dgit-maint-merge.7.pod
index 0ccd8c7e..17637bad 100644
--- a/dgit-maint-merge.7.pod
+++ b/dgit-maint-merge.7.pod
@@ -166,7 +166,7 @@ Now create I<debian/gbp.conf>:
[DEFAULT]
upstream-branch = upstream
debian-branch = master
- upstream-tag = %(version)s
+ upstream-tag = upstream/%(version)s
sign-tags = True
pristine-tar = False
@@ -393,6 +393,8 @@ or if you have a working watch file
=back
+In the following, replace I<1.2.3> with I<upstream/1.2.3>.
+
=head2 Reviewing & merging the release
It's a good idea to preview the merge of the new upstream release.
--
2.20.1
From 888f675a6e5b3322a45c06ca2162663edd7cd7b3 Mon Sep 17 00:00:00 2001
From: Sean Whitton <[email protected]>
Date: Wed, 24 Jul 2019 20:08:23 +0100
Subject: [PATCH 2/3] d-m-{merge,debrebase}(7): Set 'merge' in gbp.conf
This enables simplifying runes which are more frequently to be typed.
'merge-mode' no longer need be set since in the only case where the
manpages recommend allowing `gbp import-orig` to perform a merge, a
different merge mode is required (and specified in that rune).
Signed-off-by: Sean Whitton <[email protected]>
---
dgit-maint-debrebase.7.pod | 8 ++++----
dgit-maint-merge.7.pod | 7 ++++---
2 files changed, 8 insertions(+), 7 deletions(-)
diff --git a/dgit-maint-debrebase.7.pod b/dgit-maint-debrebase.7.pod
index 2ac70b57..28406697 100644
--- a/dgit-maint-debrebase.7.pod
+++ b/dgit-maint-debrebase.7.pod
@@ -188,7 +188,7 @@ Now create I<debian/gbp.conf>:
pristine-tar-commit = False
[import-orig]
- merge-mode = merge
+ merge = False
=back
@@ -208,7 +208,7 @@ Then we can import the upstream version:
=over 4
- % gbp import-orig --merge-mode=replace ../foo_1.2.2.orig.tar.xz
+ % gbp import-orig --merge --merge-mode=replace ../foo_1.2.2.orig.tar.xz
=back
@@ -372,7 +372,7 @@ Then, either
=over 4
- % gbp import-orig --no-merge ../foo_1.2.3.orig.tar.xz
+ % gbp import-orig ../foo_1.2.3.orig.tar.xz
=back
@@ -380,7 +380,7 @@ or if you have a working watch file
=over 4
- % gbp import-orig --no-merge --uscan
+ % gbp import-orig --uscan
=back
diff --git a/dgit-maint-merge.7.pod b/dgit-maint-merge.7.pod
index 17637bad..71cb508c 100644
--- a/dgit-maint-merge.7.pod
+++ b/dgit-maint-merge.7.pod
@@ -174,6 +174,7 @@ Now create I<debian/gbp.conf>:
[import-orig]
merge-mode = merge
+ merge = False
=back
@@ -193,7 +194,7 @@ Then we can import the upstream version:
=over 4
- % gbp import-orig --merge-mode=replace ../foo_1.2.2.orig.tar.xz
+ % gbp import-orig --merge --merge-mode=replace ../foo_1.2.2.orig.tar.xz
=back
@@ -381,7 +382,7 @@ Then, either
=over 4
- % gbp import-orig --no-merge ../foo_1.2.3.orig.tar.xz
+ % gbp import-orig ../foo_1.2.3.orig.tar.xz
=back
@@ -389,7 +390,7 @@ or if you have a working watch file
=over 4
- % gbp import-orig --no-merge --uscan
+ % gbp import-orig --uscan
=back
--
2.20.1
From e6dd7f012006456fccfabf14ee3a457a658b95d1 Mon Sep 17 00:00:00 2001
From: Sean Whitton <[email protected]>
Date: Thu, 25 Jul 2019 07:03:36 +0100
Subject: [PATCH 3/3] dgit-maint-debrebase(7): Import tarball before committing
gbp.conf
The workflow given previously fails to produce a history that can work
with git-debrebase, because it has the first commit introducing
debian/ be an ancestor of the first import of the upstream source.
Signed-off-by: Sean Whitton <[email protected]>
---
dgit-maint-debrebase.7.pod | 64 ++++++++++++++++++++------------------
1 file changed, 33 insertions(+), 31 deletions(-)
diff --git a/dgit-maint-debrebase.7.pod b/dgit-maint-debrebase.7.pod
index 28406697..475fabeb 100644
--- a/dgit-maint-debrebase.7.pod
+++ b/dgit-maint-debrebase.7.pod
@@ -171,10 +171,37 @@ begin
% mkdir foo
% cd foo
% git init
+ % git checkout -b upstream
+ % gbp import-orig \
+ --upstream-branch=upstream --debian-branch=master \
+ --upstream-tag='upstream/%(version)s' \
+ --sign-tags --no-pristine-tar \
+ ../foo_1.2.2.orig.tar.xz
+ % git branch -f upstream
=back
-Now create I<debian/gbp.conf>:
+This should leave you on the master branch. Next, our upstream branch
+cannot be pushed to B<dgit-repos>, but since we will need it whenever
+we import a new upstream version, we must push it somewhere. The
+usual choice is B<salsa.debian.org>:
+
+=over 4
+
+ % git remote add -f origin salsa.debian.org:Debian/foo.git
+ % git push --follow-tags -u origin master upstream
+
+=back
+
+You are now ready to proceed as above, making commits to the
+I<debian/> directory and to the upstream source. As above, for
+technical reasons, B<it is essential that your first commit introduces
+the debian/ directory containing at least one file, and does nothing
+else.> In other words, make a commit introducing I<debian/> before
+patching the upstream source.
+
+A convenient way to ensure this requirement is satisfied is to start
+by creating I<debian/gbp.conf>:
=over 4
@@ -192,43 +219,18 @@ Now create I<debian/gbp.conf>:
=back
-gbp-import-orig(1) requires a pre-existing upstream branch:
+and commit that:
=over 4
% git add debian/gbp.conf && git commit -m "create gbp.conf"
- % git checkout --orphan upstream
- % git rm -rf .
- % git commit --allow-empty -m "initial, empty branch for upstream source"
- % git checkout -f master
=back
-Then we can import the upstream version:
-
-=over 4
-
- % gbp import-orig --merge --merge-mode=replace ../foo_1.2.2.orig.tar.xz
-
-=back
-
-Our upstream branch cannot be pushed to B<dgit-repos>, but since we
-will need it whenever we import a new upstream version, we must push
-it somewhere. The usual choice is B<salsa.debian.org>:
-
-=over 4
-
- % git remote add -f origin salsa.debian.org:Debian/foo.git
- % git push --follow-tags -u origin master upstream
-
-=back
-
-You are now ready to proceed as above, making commits to the
-I<debian/> directory and to the upstream source. As above, for
-technical reasons, B<it is essential that your first commit introduces
-the debian/ directory containing at least one file, and does nothing
-else.> In other words, make a commit introducing I<debian/> before
-patching the upstream source.
+Note that we couldn't create I<debian/gbp.conf> before now for the
+same technical reasons which require our first commit to introduce
+I<debian/> without patching the upstream source. That's why we had to
+pass a lot of options to our first call to gbp-import-orig(1).
=head1 CONVERTING AN EXISTING PACKAGE
--
2.20.1
signature.asc
Description: PGP signature
--- End Message ---
--- Begin Message ---
Source: dgit
Source-Version: 9.10
We believe that the bug you reported is fixed in the latest version of
dgit, which is due to be installed in the Debian FTP archive.
A summary of the changes between this version and the previous one is
attached.
Thank you for reporting the bug, which will now be closed. If you
have further comments please address them to [email protected],
and the maintainer will reopen the bug report if appropriate.
Debian distribution maintenance software
pp.
Ian Jackson <[email protected]> (supplier of updated dgit package)
(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing [email protected])
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
Format: 1.8
Date: Mon, 03 Feb 2020 08:41:10 +0000
Source: dgit
Binary: dgit git-debrebase git-debpush dgit-infrastructure
Architecture: source
Version: 9.10
Distribution: unstable
Urgency: medium
Maintainer: Ian Jackson <[email protected]>
Changed-By: Ian Jackson <[email protected]>
Description:
dgit - git interoperability with the Debian archive
dgit-infrastructure - dgit server backend infrastructure
git-debpush - client script for git pushing to Debian-style archives
git-debrebase - rebasing git workflow tool for Debian packaging
Closes: 928473 932954 940588 945356 950326
Changes:
dgit (9.10) unstable; urgency=medium
.
dgit bugfix:
* Work around gbp metadata handling bug which can prevent import
of some anomalous source packages. Closes:#950326.
Report from Peter Green.
.
git-debpush bugfix:
* avoid a pipefail problem. Closes:#940588. [Sean Whitton]
.
Documentation:
* Terminology: Change "rewind" to "rewrite" where appropriate
* dgit(1): Cover more cases of --overwrite and --deliberately
Closes:#928473.
* dgit(1): Do not talk about `intermediate' uploads.
* d-m-{merge,debrebase}(7): Use an 'upstream/' tag prefix in
gbp.conf; set `merge' in gbp.conf; import tarball before
committing gbp.conf. Closes:#932954. [Sean Whitton]
.
i18n:
* Updated nl.po file. Closes:#945356. [Frans Spiesschaert]
Checksums-Sha1:
1fbc371ffb8f7ccbf4ba2426a88ca6dc1fbef17e 1846 dgit_9.10.dsc
12c3986794e5eb4a57694d796fe625b8a040f7ea 696437 dgit_9.10.tar.gz
Checksums-Sha256:
17803a016ecda8a597ca9404625b2e1f8ca638809f2bd99b2b0260c654c4ce76 1846
dgit_9.10.dsc
d835ad0ff380ba53773904febda742cf4c9506403d6eaaab8ec68952febdfbe3 696437
dgit_9.10.tar.gz
Files:
dfed9ca7934342f0e748ad0e472cb1d3 1846 devel optional dgit_9.10.dsc
912e8fd688da57be3fc1c9139ef5c1d9 696437 devel optional dgit_9.10.tar.gz
-----BEGIN PGP SIGNATURE-----
iQEzBAEBCAAdFiEEVZrkbC1rbTJl58uh4+M5I0i1DTkFAl433mQACgkQ4+M5I0i1
DTnuLwgAsV/c84xDQc9UYl+LhhAM6LY0tKHL05AtrOpe/VqDWHgAXn06afPh8R0e
D8QCKg4vyyf/dSX5zjnZZgGcySYkhXDEm+SIFMWkIbcYZG4oQSrOob8EP58fEkKT
rbcJs5yMw3EqkOnuz+NWtZBosj0nr29PQPwjETnA2SabpmCw/+0E489wvLrFeXBV
U5CUhpIcS8zmcHUnxjEBxGt5sx85eR3QOv4nSR1y3bv0E5GOz9F3dy/O2HHD0psG
WcovQyXpSAzBvbmd8TIa2q9maO7ldRA1mq5z3ha2V7Kf91XluJ1otVnKhHpplPLu
hbmBIBvKFr+22IL/afFDHKSO8tJdsg==
=9eXd
-----END PGP SIGNATURE-----
--- End Message ---