summaryrefslogtreecommitdiff
path: root/dgit.1
diff options
context:
space:
mode:
Diffstat (limited to 'dgit.1')
-rw-r--r--dgit.170
1 files changed, 61 insertions, 9 deletions
diff --git a/dgit.1 b/dgit.1
index 6d46b20..8ddcbe3 100644
--- a/dgit.1
+++ b/dgit.1
@@ -39,10 +39,11 @@ This is the command line reference.
Please read the tutorial(s):
.TS
lb l.
-dgit-user(7) for users: editing, building and sharing packages
-dgit-nmu-simple(7) for DDs: doing a straightforward NMU
+dgit-user(7) for users: edit, build and share packages
+dgit-nmu-simple(7) for DDs: do a straightforward NMU
dgit-maint-native(7) for maintainers of Debian-native packages
-dgit-maint-merge(7) for maintainers who want a pure git workflow
+dgit-maint-debrebase(7) for maintainers: a pure-git rebasish workflow
+dgit-maint-merge(7) for maintainers: a pure-git merging workflow
dgit-maint-gbp(7) for maintainers already using git-buildpackage
dgit-sponsorship(7) for sponsors and sponsored contributors
.TE
@@ -87,6 +88,7 @@ For your convenience, the
remote will be set up from the package's Vcs-Git field, if there is
one - but note that in the general case the history found there may be
different to or even disjoint from dgit's view.
+(See also dgit update-vcs-git.)
.TP
\fBdgit fetch\fR [\fIsuite\fP]
Consults the archive and git-repos to update the git view of
@@ -117,6 +119,10 @@ that the generated source package corresponds to the relevant git
commit.
Tagging, signing and actually uploading should be left to dgit push.
+
+dgit's build operations access the the network,
+to get the -v option right.
+See -v, below.
.TP
\fBdgit build-source\fR ...
Builds the source package, and a changes file for a prospective
@@ -134,6 +140,20 @@ push-source, or dgit push.
Cleans the current working tree (according to the --clean= option in
force).
.TP
+\fBdgit update-vcs-git\fR [\fIsuite\fP|\fB.\fR] [\fB--\fR] [\fIgit fetch options\fR]
+.TQ
+\fBdgit update-vcs-git\fR [\fIsuite|\fP\fB.\fR] \fB-\fR
+Sets up, or updates the url of, the vcs-git remote, and
+(unless \fB-\fR was specified)
+runs git fetch on it.
+
+By default, the Vcs-Git field of the .dsc from Debian sid is used,
+as that is probably most up to date.
+Another suite may be specified, or
+.B .
+to indicate that the Vcs-Git of the cwd's debian/control should
+be used instead.
+.TP
.B dgit help
Print a usage summary.
.TP
@@ -185,14 +205,19 @@ archive.
dgit push always uses the package, suite and version specified in the
debian/changelog and the .dsc, which must agree. If the command line
specifies a suite then that must match too.
+
+With \fB-C\fR, performs a dgit push, additionally ensuring that no
+binary packages are uploaded.
+
+When used on a git-debrebase branch,
+dgit calls git-debrebase
+to prepare the branch
+for source package upload and push.
.TP
\fBdgit push-source\fR [\fIsuite\fP]
Without \fB-C\fR, builds a source package and dgit pushes it. Saying
\fBdgit push-source\fR is like saying "update the source code in the
archive to match my git HEAD, and let the autobuilders do the rest."
-
-With \fB-C\fR, performs a dgit push, additionally ensuring that no
-binary packages are uploaded.
.TP
\fBdgit rpush\fR \fIbuild-host\fR\fB:\fR\fIbuild-dir\fR [\fIpush args...\fR]
Pushes the contents of the specified directory on a remote machine.
@@ -236,6 +261,11 @@ and
(but only does each thing if dgit is configured to do it automatically).
You can use these in any git repository, not just ones used with
the other dgit operations.
+Does
+.B not
+run
+.B update-vcs-git
+(as that requires Debian packaging information).
.TP
.B dgit setup-useremail
Set the working tree's user.name and user.email from the
@@ -262,10 +292,19 @@ For why, see
in
.BR dgit(7) .
+If there is an existing macro attribute line
+.B [attr]dgit-defuse-attrs
+in .git/info/attributes,
+but it is insufficient,
+because it was made by an earlier version of dgit
+and git has since introduced new transforming attributes,
+modifies the macro to disable the newer transformations.
+
(If there is already a macro attribute line
.B [attr]dgit-defuse-attrs
in .git/info/attributes
-(whatever its effects),
+which does what dgit requires
+(whatever files it effects),
this operation does nothing further.
This fact can be used to defeat or partially defeat
dgit setup-gitattributes
@@ -286,6 +325,15 @@ new quilt patch. dgit cannot convert nontrivial merges, or certain
other kinds of more exotic history. If dgit can't find a suitable
linearisation of your history, by default it will fail, but you can
ask it to generate a single squashed patch instead.
+
+When used with a git-debrebase branch,
+dgit will ask git-debrebase to prepare patches.
+However,
+dgit can make patches in some situations where git-debrebase fails,
+so dgit quilt-fixup can be useful in its own right.
+To always use dgit's own patch generator
+instead of git-debrebase make-patches,
+pass --git-debrebase=true to dgit.
.TP
\fBdgit import-dsc\fR [\fIsub-options\fR] \fI../path/to/.dsc\fR [\fB+\fR|\fB..\fR]branch
Import a Debian-format source package,
@@ -461,7 +509,7 @@ push will still ensure that the .dsc you upload and the git tree
you push are identical, so this option won't make broken pushes.)
.TP
.BR --overwrite [=\fIprevious-version\fR]
-Declare that even though your git branch is not a descendant
+Declare that even though your git branch may not be a descendant
of the version in the archive
according to the revision history,
it really does contain
@@ -482,7 +530,7 @@ changes unless someone committed to git a finalised changelog
entry, and then made later changes to that version.)
dgit push --overwrite
-will make a
+will, if necessary, make a
pseudo-merge (that is, something that looks like the result
of git merge -s ours) to stitch the archive's version into your own
git history, so that your push is a fast forward from the archive.
@@ -825,6 +873,7 @@ Specifies a single additional option to pass to
.BR sbuild ,
.BR ssh ,
.BR dgit ,
+.BR git-debrebase ,
.BR apt-get ,
.BR apt-cache ,
.BR gbp-pq ,
@@ -872,6 +921,7 @@ Specifies alternative programs to use instead of
.BR gpg ,
.BR ssh ,
.BR dgit ,
+.BR git-debrebase ,
.BR apt-get ,
.BR apt-cache ,
.BR git ,
@@ -1143,6 +1193,8 @@ or when pushing and
.BI dgit.dsc-url-proto-ok.bad-syntax
.TP
.BI dgit.default.dsc-url-proto-ok
+.TP
+.BR dgit.vcs-git.suites " \fIsuite\fR[" ; ...]
.SH ENVIRONMENT VARIABLES
.TP
.BR DGIT_SSH ", " GIT_SSH