chiark / gitweb /
git-debrebase: make-patched: Provide --quiet-would-amend
[dgit.git] / git-debrebase.1.pod
index ae095c8c194097e794ebd0b441ac6857a9d84df9..4d4c85a94992b7e83f68d5e8a20212176ee658c6 100644 (file)
@@ -29,10 +29,13 @@ which defines many important terms used here.
 
 =item git-debrebase [-- <git-rebase options...>]
 
+=item git-debrebase [-i <further git-rebase options...>]
+
 Unstitches and launders the branch.
 (See L</UNSTITCHING AND LAUNDERING> below.)
 
-Then optionally edits the Debian delta queue,
+Then, if any git-rebase options were supplied,
+edits the Debian delta queue,
 using git-rebase, by running
 
     git rebase <git-rebase options> <breakwater-tip>
@@ -48,14 +51,54 @@ If you abort the git-rebase,
 the branch will still have been laundered,
 but everything in the rebase will be undone.
 
+The options for git-rebase must either start with C<-i>,
+or be prececded by C<-->,
+to distinguish them from options for git-debrebase.
+
+=item git-debrebase status
+
+Analyise the current branch,
+both in terms of its conents,
+and the refs which are relevant to git-debrebase,
+and print a human-readable summary.
+
+Please do not attempt to parse the output;
+it may be reformatted or reorganised in the future.
+Instead,
+use one of the L<UNDERLYING AND SUPPLEMENTARY OPERATIONS>
+described below.
+
+=item git-debrebase conclude
+
+Finishes a git-debrebase session,
+tidying up the branch and making it fast forward again.
+
+Specifically: if the branch is unstitched,
+launders and restitches it,
+making a new pseudomerge.
+Otherwise, it is an error,
+unless --noop-ok.
+
+=item git-debrebase quick
+
+Unconditionally launders and restitches the branch,
+consuming any ffq-prev
+and making a new pseudomerge.
+
+If the branch is already laundered and stitched, does nothing.
+
+=item git-debrebase prepush [--prose=<for commit message>]
+
 =item git-debrebase stitch [--prose=<for commit message>]
 
-Stitch the branch,
+Stitches the branch,
 consuming ffq-prev.
+This is a good command to run before pushing to a git server.
 
 If there is no ffq-prev, it is an error, unless --noop-ok.
 
-It is a snag (see B<-f>) if the branch is not laundered.
+You should consider using B<conclude> instead,
+because that launders the branch too.
 
 =item git-debrebase new-upstream-v0 <new-version> [<upstream-details>...]
 
@@ -158,6 +201,33 @@ that its command line syntax is optimal.
 We may want to introduce an incompatible replacement syntax
 under the name C<new-upstream>.
 
+=item git-debrebase make-patches [--quiet-would-amend]
+
+Generate patches in debian/patches/
+representing the changes made to upstream files.
+
+It is not normally necessary to run this command explicitly.
+When uploading to Debian,
+dgit and git-debrebase
+will cooperate to regenerate patches as necessary.
+When working with pure git remotes,
+the patches are not needed.
+
+Normally git-debrebase make-patches will
+require a laundered branch.
+(A laundered branch does not contain any patches.)
+But if there are already some patches made by
+git-debrebase make-patches,
+and all that has happened is that more
+changes to upstream files have been committed,
+running it again can add the missing patches.
+
+If the patches implied by the current branch
+are not a simple superset of those already in debian/patches,
+make-patches will fail with exit status 7,
+and an error message.
+(The message can be suppress with --quiet-would-amend.)
+
 =item git-debrebase convert-from-gbp [<upstream-commit-ish>]
 
 Cnnverts a gbp patches-unapplied branch