The usual workflow is:
.br
-1. dgit clone or fetch
+1. \fBdgit clone\fR or \fBfetch\fR;
.br
-2. make, dev test and commit changes in git as desired
+2. make, do dev tests, and commit changes in git as desired;
.br
-3. run dgit build, dgit sbuild or
-dgit build-source, or generate the source and binary packages for upload
-some other way
+3. build packages for upload, using e.g. \fBdgit sbuild\fR
.br
-4. do pre-upload tests of the proposed upload
+4. do pre-upload tests of the proposed upload;
.br
-5. dgit push.
+5. \fBdgit push\fR.
.SH OPERATIONS
.TP
\fBdgit clone\fR \fIpackage\fP [\fIsuite\fP] [\fB./\fP\fIdir|\fB/\fP\fIdir\fR]
the invocation host. The build-host needs gnupg installed, with your
public key in its keyring (but not your private key, obviously).
.TP
+.B dgit setup-mergechangelogs
+Configures a git merge helper for the file
+.B debian/changelog
+which uses
+.BR dpkg-mergechangelogs .
+You can use this in any git repository, not just ones used with
+the other dgit operations.
+.TP
.B dgit quilt-fixup
`3.0 (quilt)' format source packages need changes representing not
only in-tree but also as patches in debian/patches. dgit quilt-fixup
the downside is simply that git clean may delete files you forgot to
git add.
.TP
+.BR --clean=git-ff " | " -wgf
+The source tree should be cleaned, before building a source package
+with one of the build options, using
+.BR "git clean -xdff" .
+This is like
+"git clean -xdf"
+but it also removes any subdirectories containing different git
+trees (which only unusual packages are likely to create).
+.TP
.BR --clean=none " | " -wn
Do not clean the tree before building a source package. If there are
files which are not in git, or if the build creates such files, a