summaryrefslogtreecommitdiff
path: root/dgit-maint-merge.7.pod
diff options
context:
space:
mode:
Diffstat (limited to 'dgit-maint-merge.7.pod')
-rw-r--r--dgit-maint-merge.7.pod77
1 files changed, 29 insertions, 48 deletions
diff --git a/dgit-maint-merge.7.pod b/dgit-maint-merge.7.pod
index ddf37aa..1cd6491 100644
--- a/dgit-maint-merge.7.pod
+++ b/dgit-maint-merge.7.pod
@@ -144,6 +144,14 @@ common convention is to use the upstream version number
to obtain a release tag, and then proceed as above.
+One can generate such a versioned tag using git show's --pretty option. e.g.:
+
+=over 4
+
+ % git tag -s upstream/$(git show --date=format:%Y%m%d --pretty=format:"1.2.2+git%cd.%h" --quiet upstream/main) upstream/main
+
+=back
+
=back
=head2 When upstream releases only tarballs
@@ -270,82 +278,55 @@ 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>. If this is the first
+The first dgit push will require I<--trust-changelog>. If this is the first
ever dgit push of the package, consider passing
-I<--deliberately-not-fast-forward> instead of I<--overwrite>. This
+I<--deliberately-not-fast-forward> instead of I<--trust-changelog>. 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
+=head1 SOURCE PACKAGE AND GIT CONFIGURATION
-=head2 debian/source/options
+=head2 dgit configuration
-We set some source package options such that dgit can transparently
-handle the "dropping" and "refreshing" of changes to the upstream
-source:
+We must tell dgit not to try to maintain
+a linear queue of patches to the upstream source:
=over 4
- single-debian-patch
- auto-commit
+ git config dgit.default.quilt-mode single
=back
-You don't need to create this file if you are using the version 1.0
-source package format.
-
-=head2 Sample text for debian/source/patch-header
-
-It is a good idea to explain how a user can obtain a breakdown of the
-changes to the upstream source:
+This command should be executed in each git clone of this package, including
+your co-maintainer's. Don't set it more globally, because it is not a good
+default for working on Debian source packages in general.
-=over 4
-
-The Debian packaging of foo is maintained in git,
-using the merging workflow described in dgit-maint-merge(7).
-There isn't a patch queue that can be represented as a quilt series.
+=head2 debian/source/options
-A detailed breakdown of the changes is available from their
-canonical representation -
-git commits in the packaging repository.
-For example, to see the changes made by the Debian maintainer in the
-first upload of upstream version 1.2.3, you could use:
+We set a source package option to help dpkg handle
+changes to the upstream
+source:
=over 4
- % git clone https://git.dgit.debian.org/foo
- % cd foo
- % git log --oneline 1.2.3..debian/1.2.3-1 -- . ':!debian'
-
-=back
-
-(If you have dgit, use `dgit clone foo`,
-rather than plain `git clone`.)
-
-A single combined diff, containing all the changes, follows.
+ auto-commit
=back
-If you are using the version 1.0 source package format, this text
-should be added to README.source instead. The version 1.0 source
-package format ignores debian/source/patch-header.
-
-If you're using the version 3.0 (quilt) source package format, you
-could add this text to README.source instead of
-debian/source/patch-header, but this might distract from more
-important information present in README.source.
+You don't need to create this file if you are using the version 1.0
+source package format.
=head1 BUILDING AND UPLOADING
Use B<dgit build>, B<dgit sbuild>, B<dgit pbuilder>, B<dgit
-cowbuilder>, B<dgit push-source>, and B<dgit push> as detailed in
+cowbuilder>, B<dgit push-source>, and B<dgit push-built> as detailed in
dgit(1). If any command fails, dgit will provide a carefully-worded
error message explaining what you should do. If it's not clear, file
a bug against dgit. Remember to pass I<--new> for the first upload.
If you want to upload with git-debpush(1), for the first upload you
-should pass the B<--quilt=smash> quilt mode option (see
+should pass the B<--quilt=single> quilt mode option (see
git-debpush(1)).
As another alternative to B<dgit build> and friends, you can use a
@@ -523,11 +504,11 @@ that have been forwarded, "retaining" the ones that haven't.
=back
Alternatively, you can apply the NMU diff to your repository. The
-next push will then require I<--overwrite>.
+next push will then require I<--trust-changelog>.
=head1 SEE ALSO
-dgit(1), dgit(7)
+dgit(1), dgit(7), gitrevisions(7)
=head1 AUTHOR