File: git-ubuntu.1

package info (click to toggle)
git-ubuntu 1.1-2
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 1,688 kB
  • sloc: python: 13,378; sh: 480; makefile: 2
file content (214 lines) | stat: -rw-r--r-- 6,314 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
.TH "GIT-UBUNTU" "1" "2017-07-19" "Git-Ubuntu 0.2" "Git-Ubuntu Manual"

.SH "NAME"
git-ubuntu \- use Git with a Launchpad hosted source package repository
.SH "SYNOPSIS"
.SP
.NF
\fIgit ubuntu\fR [\-h] [\-v | \-\-verbose] [\-\-retries <num_retries>]
[\-\-retry-backoffs <backoff,\&.\&.\&.>] [\-\-proto <proto>]
[\-P | \-\-parentfile <parentfile>] [\-L | \-\-pullfile <pullfile>]
<command> [<args>]
.FI
.SP
.SH "DESCRIPTION"
.SP
Ubuntu packages often have changes relative to their Debian bases,
referred to as the "Ubuntu delta"\&.
\fIgit ubuntu\fR represents a collection of tools for dealing with these
deltas, implemented as \fIgit\fR(1) subcommands\&.
.PP
Part of this work is performed automatically by the "importer", which
relies on the \fILaunchpad\fR repository as its source of truth about a given
source package's publishing history\&.
The remainder of the work needs to be handled manually, and
\fIgit ubuntu\fR provides a set of commands (detailed below) for doing
so\&.
.PP
A key concept to understand for the git ubuntu workflow is the
formalized use of git tags to track version states.  These tags will
look something like "logical/1%2.3.4.1-1ubuntu3"\&.  (Git and debian/changelog
conflict on the use of certain reserved characters, such as "~", ":"
and "."\&.  These are resolved following the Debian DEP14 version number
transformation standard\&.)
.PP
The tag types used by git ubuntu are "logical/", "split/",
'reconstruct/", "upload/", and 'format <format>"\&.
The first four forms are standardized for git-ubuntu usage and generate
tags, respectively, "logical/%(version)s", "split/%(version)s",
"reconstruct/%(version)s", "upload/%(versions)s", where "%(versions)"
will be replaced by the DEP14 mangling of the last version in
debian/changelog as present in <commitish>\&.
The last form allows free-form formatting\&.
.PP
The benefit of using these tools and this formalized tagging system is
to simplify future merges from Debian, allowing them to be done as
straightforward \fIgit rebase\fR operations\&.

.SP
.SH "OPTIONS"
.PP
The following options are common to all \fBgit-ubuntu\fR subcommands\&.
.PP
\-h, \-\-help
.RS 4
Prints the synopsis and a list of the most commonly used commands\&.
.RE
.PP
\-v, \-\-verbose
.RS 4
Makes \fIgit ubuntu\fR verbose\&.
Useful for debugging and seeing what underlying commands are run\&.
.RE
.PP
\-\-retries <num_retries>
.RS 4
Number of retries to attempt for network interactions with Launchpad\&.
The default is 5 retry attempts\&.
.RE
.PP
\-\-retry-backoffs <backoff,\&.\&.\&.>
.RS 4
Comma-separated list of backoff durations (in seconds) to use between
retry attempts\&.
The default is exponential backoff (with the default --retries value,
this corresponds to 1, 2 and 4 seconds between subsequent retry
attempts)\&.
.RE
.PP
\-\-proto <proto>
.RS 4
Protocol to use when fetching the configured repositories\&.
"git", "http" and "https" are valid options, with "https" the default\&.
.RE
.PP
\-p <parentfile>, \-\-parentfile <parentfile>
.RS 4
Path to a parent overrides file\&.
The import algorithm cannot always correctly determine the parenting
relationship between source package publications, particularly for
older historical publications\&.
\fIgit ubuntu\fR needs a mechanism to be told what the parents of a
publication are when they cannot be correctly deduced\&. The parentfile
specifies this information in the following format:
.RS 4
<pkgname> <child version> <publish parent version> <changelog parent version>
.RE
with one override per line\&. 
.SP
A default override file is provided with \fIgit ubuntu\fR and
end-users generally do not need to provide this option\&.
.RE
.PP
\-l <pullfile>, \-\-pullfile <pullfile>
.RS 4
Path to a pull overrides file\&.
If the Launchpad source package data is inaccurate
for a publish (this happens, for example, when a same-versioned source
package is published multiple times with different orig tarballs),
\fIgit ubuntu\fR needs a mechanism to be told where to obtain accurate
sources from\&.
The pullfile specifies this information in the following format:
.RS 4
<pkgname> <version> <url of dsc file> <urls of orig files>
.RE
with one package per line\&.
"-" for the dsc file indicates to use the one from launchpad\&.
.SP
A default override file is provided with \fIgit ubuntu\fR and
end-users generally do not need to provide this option\&.
.RE
.SP
.SH "GIT UBUNTU COMMANDS"
.PP
\fBgit-ubuntu-clone\fR(1)
.RS 4
Clone a repository into a new directory\&.
.RE
.PP
\fBgit-ubuntu-export-orig\fR(1)
.RS 4
Export orig tarballs from the Git repository\&.
.RE
.PP
\fBgit-ubuntu-import\fR(1)
.RS 4
Import the Launchpad publishing history of a source package into a
repository\&.
.RE
.PP
\fBgit-ubuntu-merge\fR(1)
.RS 4
Perform an Ubuntu merge\&.
.RE
.PP
\fBgit-ubuntu-queue\fR(1)
.RS 4
Interact with the unapproved queue\&.
.RE
.PP
\fBgit-ubuntu-remote\fR(1)
.RS 4
Manage tracked repositories\&.
.RE
.PP
\fBgit-ubuntu-submit\fR(1)
.RS 4
Submit changes to a repository as a Launchpad Merge Proposal\&.
.RE
.PP
\fBgit-ubuntu-tag\fR(1)
.RS 4
Create a tag object, respecting DEP14\&.
.RE
.SP
.SH "EXIT STATUS"
.SP
\fIgit ubuntu\fR exits with status 0 if a command completes
successfully\&.
\fIgit ubuntu\fR exits with nonzero exit status on errors\&.
.SP
.SH "FILES"
.PP
$GIT_DIR/\&.gitconfig, $HOME/\&.gitconfig
.RS 4
Some \fIgit ubuntu\fR configuration is stored via \fIgit config\fR in
both the global user and repository local level files\&.
Specificially:
.SP
.RS 4
gitubuntu\&.lpuser
.RE
Stores the Launchpad user name for authentication in the global user
file\&.
.RE
.SP
.SH "REPORTING BUGS"
.SP
Report bugs at
.UR https://bugs.launchpad.net/git-ubuntu
.UE
\&.
.PP
.SH "AUTHORS"
.SP
\fIgit ubuntu\fR was started conceptually by Robie Basak, and is
currently maintained by Nishanth Aravamudan\&.
Numerous contributions have been made by Scott Moser and other members
of the Ubuntu Server team\&.
.SP
.SH "SEE ALSO"
.SP
\fBgit\fR(1)
.PP
.UR https://wiki.ubuntu.com/UbuntuDevelopment/Merging/GitWorkflow
.UE
.PP
.\" Would prefer to use the following URL, but it is static
.\" .UR https://insights.ubuntu.com/2017/07/24/developing-ubuntu-using-git/
.\" .UE
.UR http://www.justgohome.co.uk/blog/2017/07/developing-ubuntu-using-git.html
.UE
.PP
.SH "GIT-UBUNTU"
Part of the \fBgit-ubuntu\fR(1) suite