chiark / gitweb /
i18n: Provide `i18n-update' target in toplevel Makefile
[dgit.git] / po4a / dgit-maint-merge_7.pot
1 # SOME DESCRIPTIVE TITLE
2 # Copyright (C) YEAR Free Software Foundation, Inc.
3 # This file is distributed under the same license as the PACKAGE package.
4 # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
5 #
6 #, fuzzy
7 msgid ""
8 msgstr ""
9 "Project-Id-Version: PACKAGE VERSION\n"
10 "POT-Creation-Date: 2018-10-04 01:04+0100\n"
11 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
12 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
13 "Language-Team: LANGUAGE <LL@li.org>\n"
14 "Language: \n"
15 "MIME-Version: 1.0\n"
16 "Content-Type: text/plain; charset=UTF-8\n"
17 "Content-Transfer-Encoding: 8bit\n"
18
19 #. type: =head1
20 #: ../dgit.1:3 ../dgit.7:2 ../dgit-user.7.pod:1 ../dgit-nmu-simple.7.pod:1
21 #: ../dgit-maint-native.7.pod:1 ../dgit-maint-merge.7.pod:1
22 #: ../dgit-maint-gbp.7.pod:1 ../dgit-maint-debrebase.7.pod:1
23 #: ../dgit-downstream-dsc.7.pod:1 ../dgit-sponsorship.7.pod:1
24 #: ../git-debrebase.1.pod:1 ../git-debrebase.5.pod:1
25 #, no-wrap
26 msgid "NAME"
27 msgstr ""
28
29 #. type: =item
30 #: ../dgit.1:286 ../dgit-maint-merge.7.pod:446
31 #, no-wrap
32 msgid "1."
33 msgstr ""
34
35 #. type: =item
36 #: ../dgit.1:287 ../dgit-maint-merge.7.pod:450
37 #, no-wrap
38 msgid "2."
39 msgstr ""
40
41 #. type: =item
42 #: ../dgit.1:288 ../dgit-maint-merge.7.pod:455
43 #, no-wrap
44 msgid "3."
45 msgstr ""
46
47 #. type: =head1
48 #: ../dgit.1:1394 ../dgit.7:23 ../dgit-user.7.pod:447
49 #: ../dgit-nmu-simple.7.pod:137 ../dgit-maint-native.7.pod:126
50 #: ../dgit-maint-merge.7.pod:491 ../dgit-maint-gbp.7.pod:136
51 #: ../dgit-maint-debrebase.7.pod:722 ../dgit-downstream-dsc.7.pod:352
52 #: ../dgit-sponsorship.7.pod:321 ../git-debrebase.1.pod:601
53 #: ../git-debrebase.5.pod:678
54 #, no-wrap
55 msgid "SEE ALSO"
56 msgstr ""
57
58 #. type: =head1
59 #: ../dgit-user.7.pod:5 ../dgit-maint-native.7.pod:5
60 #: ../dgit-maint-merge.7.pod:5 ../dgit-maint-gbp.7.pod:5
61 #: ../dgit-maint-debrebase.7.pod:5 ../dgit-downstream-dsc.7.pod:5
62 #: ../git-debrebase.1.pod:10 ../git-debrebase.5.pod:5
63 msgid "INTRODUCTION"
64 msgstr ""
65
66 #. type: textblock
67 #: ../dgit-user.7.pod:449 ../dgit-maint-native.7.pod:128
68 #: ../dgit-maint-merge.7.pod:493 ../dgit-maint-gbp.7.pod:138
69 msgid "dgit(1), dgit(7)"
70 msgstr ""
71
72 #. type: verbatim
73 #: ../dgit-maint-native.7.pod:107 ../dgit-maint-merge.7.pod:484
74 #, no-wrap
75 msgid ""
76 "    % dgit pull\n"
77 "\n"
78 msgstr ""
79
80 #. type: textblock
81 #: ../dgit-maint-merge.7.pod:3
82 msgid ""
83 "dgit - tutorial for package maintainers, using a workflow centered around "
84 "git-merge(1)"
85 msgstr ""
86
87 #. type: textblock
88 #: ../dgit-maint-merge.7.pod:7
89 msgid ""
90 "This document describes elements of a workflow for maintaining a non-native "
91 "Debian package using B<dgit>.  The workflow makes the following opinionated "
92 "assumptions:"
93 msgstr ""
94
95 #. type: textblock
96 #: ../dgit-maint-merge.7.pod:15
97 msgid ""
98 "Git histories should be the non-linear histories produced by git-merge(1), "
99 "preserving all information about divergent development that was later "
100 "brought together."
101 msgstr ""
102
103 #. type: textblock
104 #: ../dgit-maint-merge.7.pod:21
105 msgid ""
106 "Maintaining convenient and powerful git workflows takes priority over the "
107 "usefulness of the raw Debian source package.  The Debian archive is thought "
108 "of as an output format."
109 msgstr ""
110
111 #. type: textblock
112 #: ../dgit-maint-merge.7.pod:25
113 msgid ""
114 "For example, we don't spend time curating a series of quilt patches.  "
115 "However, in straightforward cases, the information such a series would "
116 "contain is readily available from B<dgit-repos>."
117 msgstr ""
118
119 #. type: textblock
120 #: ../dgit-maint-merge.7.pod:33
121 msgid ""
122 "It is more important to have the Debian package's git history be a "
123 "descendent of upstream's git history than to use exactly the orig.tar that "
124 "upstream makes available for download."
125 msgstr ""
126
127 #. type: textblock
128 #: ../dgit-maint-merge.7.pod:39
129 msgid ""
130 "This workflow is less suitable for some packages.  When the Debian delta "
131 "contains multiple pieces which interact, or which you aren't going to be "
132 "able to upstream soon, it might be preferable to maintain the delta as a "
133 "rebasing patch series.  For such a workflow see for example dgit-maint-"
134 "debrebase(7) and dgit-maint-gbp(7)."
135 msgstr ""
136
137 #. type: =head1
138 #: ../dgit-maint-merge.7.pod:47 ../dgit-maint-debrebase.7.pod:61
139 msgid "INITIAL DEBIANISATION"
140 msgstr ""
141
142 #. type: textblock
143 #: ../dgit-maint-merge.7.pod:49 ../dgit-maint-debrebase.7.pod:63
144 msgid ""
145 "This section explains how to start using this workflow with a new package.  "
146 "It should be skipped when converting an existing package to this workflow."
147 msgstr ""
148
149 #. type: =head3
150 #: ../dgit-maint-merge.7.pod:53 ../dgit-maint-merge.7.pod:335
151 #: ../dgit-maint-merge.7.pod:408 ../dgit-maint-debrebase.7.pod:67
152 #: ../dgit-maint-debrebase.7.pod:321
153 msgid "When upstream tags releases in git"
154 msgstr ""
155
156 #. type: textblock
157 #: ../dgit-maint-merge.7.pod:55 ../dgit-maint-debrebase.7.pod:69
158 msgid ""
159 "Suppose that the latest stable upstream release is 1.2.2, and this has been "
160 "tagged '1.2.2' by upstream."
161 msgstr ""
162
163 #. type: verbatim
164 #: ../dgit-maint-merge.7.pod:60 ../dgit-maint-debrebase.7.pod:74
165 #, no-wrap
166 msgid ""
167 "    % git clone -oupstream https://some.upstream/foo.git\n"
168 "    % cd foo\n"
169 "    % git verify-tag 1.2.2\n"
170 "    % git reset --hard 1.2.2\n"
171 "    % git branch --unset-upstream\n"
172 "\n"
173 msgstr ""
174
175 #. type: textblock
176 #: ../dgit-maint-merge.7.pod:68
177 msgid ""
178 "The final command detaches your master branch from the upstream remote, so "
179 "that git doesn't try to push anything there, or merge unreleased upstream "
180 "commits.  If you want to maintain a copy of your packaging branch on B<salsa."
181 "debian.org> in addition to B<dgit-repos>, you can do something like this:"
182 msgstr ""
183
184 #. type: verbatim
185 #: ../dgit-maint-merge.7.pod:76 ../dgit-maint-debrebase.7.pod:90
186 #, no-wrap
187 msgid ""
188 "    % git remote add -f origin salsa.debian.org:Debian/foo.git\n"
189 "    % git push --follow-tags -u origin master\n"
190 "\n"
191 msgstr ""
192
193 #. type: textblock
194 #: ../dgit-maint-merge.7.pod:81
195 msgid ""
196 "Now go ahead and Debianise your package.  Just make commits on the master "
197 "branch, adding things in the I<debian/> directory.  If you need to patch the "
198 "upstream source, just make commits that change files outside of the I<debian/"
199 "> directory.  It is best to separate commits that touch I<debian/> from "
200 "commits that touch upstream source, so that the latter can be cherry-picked "
201 "by upstream."
202 msgstr ""
203
204 #. type: textblock
205 #: ../dgit-maint-merge.7.pod:88
206 msgid ""
207 "Note that there is no need to maintain a separate 'upstream' branch, unless "
208 "you also happen to be involved in upstream development.  We work with "
209 "upstream tags rather than any branches, except when forwarding patches (see "
210 "FORWARDING PATCHES UPSTREAM, below)."
211 msgstr ""
212
213 #. type: textblock
214 #: ../dgit-maint-merge.7.pod:93 ../dgit-maint-debrebase.7.pod:102
215 msgid "Finally, you need an orig tarball:"
216 msgstr ""
217
218 #. type: verbatim
219 #: ../dgit-maint-merge.7.pod:97 ../dgit-maint-merge.7.pod:402
220 #: ../dgit-maint-debrebase.7.pod:106 ../dgit-maint-debrebase.7.pod:383
221 #, no-wrap
222 msgid ""
223 "    % git deborig\n"
224 "\n"
225 msgstr ""
226
227 #. type: textblock
228 #: ../dgit-maint-merge.7.pod:101 ../dgit-maint-debrebase.7.pod:110
229 msgid "See git-deborig(1) if this fails."
230 msgstr ""
231
232 #. type: textblock
233 #: ../dgit-maint-merge.7.pod:103 ../dgit-maint-debrebase.7.pod:112
234 msgid ""
235 "This tarball is ephemeral and easily regenerated, so we don't commit it "
236 "anywhere (e.g. with tools like pristine-tar(1))."
237 msgstr ""
238
239 #. type: =head3
240 #: ../dgit-maint-merge.7.pod:106
241 msgid "Verifying upstream's tarball releases"
242 msgstr ""
243
244 #. type: textblock
245 #: ../dgit-maint-merge.7.pod:110
246 msgid ""
247 "It can be a good idea to compare upstream's released tarballs with the "
248 "release tags, at least for the first upload of the package.  If they are "
249 "different, you might need to add some additional steps to your I<debian/"
250 "rules>, such as running autotools."
251 msgstr ""
252
253 #. type: textblock
254 #: ../dgit-maint-merge.7.pod:115
255 msgid ""
256 "A convenient way to perform this check is to import the tarball as described "
257 "in the following section, using a different value for 'upstream-tag', and "
258 "then use git-diff(1) to compare the imported tarball to the release tag.  If "
259 "they are the same, you can use upstream's tarball instead of running git-"
260 "deborig(1)."
261 msgstr ""
262
263 #. type: =head3
264 #: ../dgit-maint-merge.7.pod:123 ../dgit-maint-merge.7.pod:343
265 #: ../dgit-maint-merge.7.pod:433 ../dgit-maint-debrebase.7.pod:137
266 #: ../dgit-maint-debrebase.7.pod:329
267 msgid "When upstream releases only tarballs"
268 msgstr ""
269
270 #. type: textblock
271 #: ../dgit-maint-merge.7.pod:125
272 msgid ""
273 "We need a virtual upstream branch with virtual release tags.  gbp-import-"
274 "orig(1) can manage this for us.  To begin"
275 msgstr ""
276
277 #. type: verbatim
278 #: ../dgit-maint-merge.7.pod:130 ../dgit-maint-debrebase.7.pod:145
279 #, no-wrap
280 msgid ""
281 "    % mkdir foo\n"
282 "    % cd foo\n"
283 "    % git init\n"
284 "\n"
285 msgstr ""
286
287 #. type: textblock
288 #: ../dgit-maint-merge.7.pod:136 ../dgit-maint-debrebase.7.pod:151
289 msgid "Now create I<debian/gbp.conf>:"
290 msgstr ""
291
292 #. type: verbatim
293 #: ../dgit-maint-merge.7.pod:140 ../dgit-maint-debrebase.7.pod:155
294 #, no-wrap
295 msgid ""
296 "    [DEFAULT]\n"
297 "    upstream-branch = upstream\n"
298 "    debian-branch = master\n"
299 "    upstream-tag = %(version)s\n"
300 "\n"
301 msgstr ""
302
303 #. type: verbatim
304 #: ../dgit-maint-merge.7.pod:145 ../dgit-maint-debrebase.7.pod:160
305 #, no-wrap
306 msgid ""
307 "    sign-tags = True\n"
308 "    pristine-tar = False\n"
309 "    pristine-tar-commit = False\n"
310 "\n"
311 msgstr ""
312
313 #. type: verbatim
314 #: ../dgit-maint-merge.7.pod:149 ../dgit-maint-debrebase.7.pod:164
315 #, no-wrap
316 msgid ""
317 "    [import-orig]\n"
318 "    merge-mode = merge\n"
319 "\n"
320 msgstr ""
321
322 #. type: textblock
323 #: ../dgit-maint-merge.7.pod:154 ../dgit-maint-debrebase.7.pod:169
324 msgid "gbp-import-orig(1) requires a pre-existing upstream branch:"
325 msgstr ""
326
327 #. type: verbatim
328 #: ../dgit-maint-merge.7.pod:158 ../dgit-maint-debrebase.7.pod:173
329 #, no-wrap
330 msgid ""
331 "    % git add debian/gbp.conf && git commit -m \"create gbp.conf\"\n"
332 "    % git checkout --orphan upstream\n"
333 "    % git rm -rf .\n"
334 "    % git commit --allow-empty -m \"initial, empty branch for upstream source\"\n"
335 "    % git checkout -f master\n"
336 "\n"
337 msgstr ""
338
339 #. type: textblock
340 #: ../dgit-maint-merge.7.pod:166 ../dgit-maint-debrebase.7.pod:181
341 msgid "Then we can import the upstream version:"
342 msgstr ""
343
344 #. type: verbatim
345 #: ../dgit-maint-merge.7.pod:170 ../dgit-maint-debrebase.7.pod:185
346 #, no-wrap
347 msgid ""
348 "    % gbp import-orig --merge-mode=replace ../foo_1.2.2.orig.tar.xz\n"
349 "\n"
350 msgstr ""
351
352 #. type: textblock
353 #: ../dgit-maint-merge.7.pod:174 ../dgit-maint-debrebase.7.pod:189
354 msgid ""
355 "Our upstream branch cannot be pushed to B<dgit-repos>, but since we will "
356 "need it whenever we import a new upstream version, we must push it "
357 "somewhere.  The usual choice is B<salsa.debian.org>:"
358 msgstr ""
359
360 #. type: verbatim
361 #: ../dgit-maint-merge.7.pod:180 ../dgit-maint-debrebase.7.pod:195
362 #, no-wrap
363 msgid ""
364 "    % git remote add -f origin salsa.debian.org:Debian/foo.git\n"
365 "    % git push --follow-tags -u origin master upstream\n"
366 "\n"
367 msgstr ""
368
369 #. type: textblock
370 #: ../dgit-maint-merge.7.pod:185
371 msgid ""
372 "You are now ready to proceed as above, making commits to both the upstream "
373 "source and the I<debian/> directory."
374 msgstr ""
375
376 #. type: =head1
377 #: ../dgit-maint-merge.7.pod:188 ../dgit-maint-debrebase.7.pod:207
378 msgid "CONVERTING AN EXISTING PACKAGE"
379 msgstr ""
380
381 #. type: textblock
382 #: ../dgit-maint-merge.7.pod:190 ../dgit-maint-debrebase.7.pod:209
383 msgid ""
384 "This section explains how to convert an existing Debian package to this "
385 "workflow.  It should be skipped when debianising a new package."
386 msgstr ""
387
388 #. type: =head2
389 #: ../dgit-maint-merge.7.pod:193
390 msgid "No existing git history"
391 msgstr ""
392
393 #. type: verbatim
394 #: ../dgit-maint-merge.7.pod:197
395 #, no-wrap
396 msgid ""
397 "    % dgit clone foo\n"
398 "    % cd foo\n"
399 "    % git remote add -f upstream https://some.upstream/foo.git\n"
400 "\n"
401 msgstr ""
402
403 #. type: =head2
404 #: ../dgit-maint-merge.7.pod:203
405 msgid "Existing git history using another workflow"
406 msgstr ""
407
408 #. type: textblock
409 #: ../dgit-maint-merge.7.pod:205
410 msgid ""
411 "First, if you don't already have the git history locally, clone it, and "
412 "obtain the corresponding orig.tar from the archive:"
413 msgstr ""
414
415 #. type: verbatim
416 #: ../dgit-maint-merge.7.pod:210
417 #, no-wrap
418 msgid ""
419 "    % git clone git.debian.org:collab-maint/foo\n"
420 "    % cd foo\n"
421 "    % origtargz\n"
422 "\n"
423 msgstr ""
424
425 #. type: textblock
426 #: ../dgit-maint-merge.7.pod:216
427 msgid "Now dump any existing patch queue:"
428 msgstr ""
429
430 #. type: verbatim
431 #: ../dgit-maint-merge.7.pod:220
432 #, no-wrap
433 msgid ""
434 "    % git rm -rf debian/patches\n"
435 "    % git commit -m \"drop existing quilt patch queue\"\n"
436 "\n"
437 msgstr ""
438
439 #. type: textblock
440 #: ../dgit-maint-merge.7.pod:225
441 msgid "Then make new upstream tags available:"
442 msgstr ""
443
444 #. type: verbatim
445 #: ../dgit-maint-merge.7.pod:229 ../dgit-maint-debrebase.7.pod:240
446 #, no-wrap
447 msgid ""
448 "    % git remote add -f upstream https://some.upstream/foo.git\n"
449 "\n"
450 msgstr ""
451
452 #. type: =for
453 #: ../dgit-maint-merge.7.pod:233
454 msgid "dgit-test dpkg-source-ignores begin"
455 msgstr ""
456
457 #. type: textblock
458 #: ../dgit-maint-merge.7.pod:235
459 msgid ""
460 "Now you simply need to ensure that your git HEAD is dgit-compatible, i.e., "
461 "it is exactly what you would get if you ran B<dpkg-buildpackage -i'(?:^|/)\\."
462 "git(?:/|$)' -I.git -S> and then unpacked the resultant source package."
463 msgstr ""
464
465 #. type: =for
466 #: ../dgit-maint-merge.7.pod:240
467 msgid "dgit-test dpkg-source-ignores end"
468 msgstr ""
469
470 #. type: textblock
471 #: ../dgit-maint-merge.7.pod:242 ../dgit-maint-debrebase.7.pod:289
472 msgid ""
473 "To achieve this, you might need to delete I<debian/source/local-options>.  "
474 "One way to have dgit check your progress is to run B<dgit build-source>."
475 msgstr ""
476
477 #. type: textblock
478 #: ../dgit-maint-merge.7.pod:246
479 msgid ""
480 "The first dgit push will require I<--overwrite>.  If this is the first ever "
481 "dgit push of the package, consider passing I<--deliberately-not-fast-"
482 "forward> instead of I<--overwrite>.  This avoids introducing a new origin "
483 "commit into your git history.  (This origin commit would represent the most "
484 "recent non-dgit upload of the package, but this should already be "
485 "represented in your git history.)"
486 msgstr ""
487
488 #. type: =head1
489 #: ../dgit-maint-merge.7.pod:253
490 msgid "SOURCE PACKAGE CONFIGURATION"
491 msgstr ""
492
493 #. type: =head2
494 #: ../dgit-maint-merge.7.pod:255
495 msgid "debian/source/options"
496 msgstr ""
497
498 #. type: textblock
499 #: ../dgit-maint-merge.7.pod:257
500 msgid ""
501 "We set some source package options such that dgit can transparently handle "
502 "the \"dropping\" and \"refreshing\" of changes to the upstream source:"
503 msgstr ""
504
505 #. type: verbatim
506 #: ../dgit-maint-merge.7.pod:263
507 #, no-wrap
508 msgid ""
509 "    single-debian-patch\n"
510 "    auto-commit\n"
511 "\n"
512 msgstr ""
513
514 #. type: textblock
515 #: ../dgit-maint-merge.7.pod:268
516 msgid ""
517 "You don't need to create this file if you are using the version 1.0 source "
518 "package format."
519 msgstr ""
520
521 #. type: =head2
522 #: ../dgit-maint-merge.7.pod:271
523 msgid "Sample text for debian/source/patch-header"
524 msgstr ""
525
526 #. type: textblock
527 #: ../dgit-maint-merge.7.pod:273
528 msgid ""
529 "It is a good idea to explain how a user can obtain a breakdown of the "
530 "changes to the upstream source:"
531 msgstr ""
532
533 #. type: textblock
534 #: ../dgit-maint-merge.7.pod:278
535 msgid ""
536 "The Debian packaging of foo is maintained in git, using the merging workflow "
537 "described in dgit-maint-merge(7).  There isn't a patch queue that can be "
538 "represented as a quilt series."
539 msgstr ""
540
541 #. type: textblock
542 #: ../dgit-maint-merge.7.pod:282
543 msgid ""
544 "A detailed breakdown of the changes is available from their canonical "
545 "representation - git commits in the packaging repository.  For example, to "
546 "see the changes made by the Debian maintainer in the first upload of "
547 "upstream version 1.2.3, you could use:"
548 msgstr ""
549
550 #. type: verbatim
551 #: ../dgit-maint-merge.7.pod:290
552 #, no-wrap
553 msgid ""
554 "    % git clone https://git.dgit.debian.org/foo\n"
555 "    % cd foo\n"
556 "    % git log --oneline 1.2.3..debian/1.2.3-1 -- . ':!debian'\n"
557 "\n"
558 msgstr ""
559
560 #. type: textblock
561 #: ../dgit-maint-merge.7.pod:296
562 msgid ""
563 "(If you have dgit, use `dgit clone foo`, rather than plain `git clone`.)"
564 msgstr ""
565
566 #. type: textblock
567 #: ../dgit-maint-merge.7.pod:299
568 msgid "A single combined diff, containing all the changes, follows."
569 msgstr ""
570
571 #. type: textblock
572 #: ../dgit-maint-merge.7.pod:303
573 msgid ""
574 "If you are using the version 1.0 source package format, this text should be "
575 "added to README.source instead.  The version 1.0 source package format "
576 "ignores debian/source/patch-header."
577 msgstr ""
578
579 #. type: textblock
580 #: ../dgit-maint-merge.7.pod:307
581 msgid ""
582 "If you're using the version 3.0 (quilt) source package format, you could add "
583 "this text to README.source instead of debian/source/patch-header, but this "
584 "might distract from more important information present in README.source."
585 msgstr ""
586
587 #. type: =head1
588 #: ../dgit-maint-merge.7.pod:312 ../dgit-maint-debrebase.7.pod:436
589 msgid "BUILDING AND UPLOADING"
590 msgstr ""
591
592 #. type: textblock
593 #: ../dgit-maint-merge.7.pod:314
594 msgid ""
595 "Use B<dgit build>, B<dgit sbuild>, B<dgit pbuilder>, B<dgit cowbuilder>, "
596 "B<dgit push-source>, and B<dgit push> as detailed in dgit(1).  If any "
597 "command fails, dgit will provide a carefully-worded error message explaining "
598 "what you should do.  If it's not clear, file a bug against dgit.  Remember "
599 "to pass I<--new> for the first upload."
600 msgstr ""
601
602 #. type: textblock
603 #: ../dgit-maint-merge.7.pod:320
604 msgid ""
605 "As an alternative to B<dgit build> and friends, you can use a tool like "
606 "gitpkg(1).  This works because like dgit, gitpkg(1) enforces that HEAD has "
607 "exactly the contents of the source package.  gitpkg(1) is highly "
608 "configurable, and one dgit user reports using it to produce and test "
609 "multiple source packages, from different branches corresponding to each of "
610 "the current Debian suites."
611 msgstr ""
612
613 #. type: textblock
614 #: ../dgit-maint-merge.7.pod:327
615 msgid ""
616 "If you want to skip dgit's checks while iterating on a problem with the "
617 "package build (for example, you don't want to commit your changes to git), "
618 "you can just run dpkg-buildpackage(1) or debuild(1) instead."
619 msgstr ""
620
621 #. type: =head1
622 #: ../dgit-maint-merge.7.pod:331
623 msgid "NEW UPSTREAM RELEASES"
624 msgstr ""
625
626 #. type: =head2
627 #: ../dgit-maint-merge.7.pod:333 ../dgit-maint-debrebase.7.pod:319
628 msgid "Obtaining the release"
629 msgstr ""
630
631 #. type: verbatim
632 #: ../dgit-maint-merge.7.pod:339 ../dgit-maint-debrebase.7.pod:325
633 #, no-wrap
634 msgid ""
635 "    % git remote update\n"
636 "\n"
637 msgstr ""
638
639 #. type: textblock
640 #: ../dgit-maint-merge.7.pod:345 ../dgit-maint-debrebase.7.pod:331
641 msgid ""
642 "You will need the I<debian/gbp.conf> from \"When upstream releases only "
643 "tarballs\", above.  You will also need your upstream branch.  Above, we "
644 "pushed this to B<salsa.debian.org>.  You will need to clone or fetch from "
645 "there, instead of relying on B<dgit clone>/B<dgit fetch> alone."
646 msgstr ""
647
648 #. type: textblock
649 #: ../dgit-maint-merge.7.pod:350 ../dgit-maint-debrebase.7.pod:336
650 msgid "Then, either"
651 msgstr ""
652
653 #. type: verbatim
654 #: ../dgit-maint-merge.7.pod:354 ../dgit-maint-debrebase.7.pod:340
655 #, no-wrap
656 msgid ""
657 "    % gbp import-orig --no-merge ../foo_1.2.3.orig.tar.xz\n"
658 "\n"
659 msgstr ""
660
661 #. type: textblock
662 #: ../dgit-maint-merge.7.pod:358 ../dgit-maint-debrebase.7.pod:344
663 msgid "or if you have a working watch file"
664 msgstr ""
665
666 #. type: verbatim
667 #: ../dgit-maint-merge.7.pod:362 ../dgit-maint-debrebase.7.pod:348
668 #, no-wrap
669 msgid ""
670 "    % gbp import-orig --no-merge --uscan\n"
671 "\n"
672 msgstr ""
673
674 #. type: =head2
675 #: ../dgit-maint-merge.7.pod:366
676 msgid "Reviewing & merging the release"
677 msgstr ""
678
679 #. type: textblock
680 #: ../dgit-maint-merge.7.pod:368
681 msgid ""
682 "It's a good idea to preview the merge of the new upstream release.  First, "
683 "just check for any new or deleted files that may need accounting for in your "
684 "copyright file:"
685 msgstr ""
686
687 #. type: verbatim
688 #: ../dgit-maint-merge.7.pod:374
689 #, no-wrap
690 msgid ""
691 "    % git diff --stat master..1.2.3 -- . ':!debian'\n"
692 "\n"
693 msgstr ""
694
695 #. type: textblock
696 #: ../dgit-maint-merge.7.pod:378
697 msgid "You can then review the full merge diff:"
698 msgstr ""
699
700 #. type: verbatim
701 #: ../dgit-maint-merge.7.pod:382
702 #, no-wrap
703 msgid ""
704 "    % git merge-tree `git merge-base master 1.2.3` master 1.2.3 | $PAGER\n"
705 "\n"
706 msgstr ""
707
708 #. type: textblock
709 #: ../dgit-maint-merge.7.pod:386
710 msgid "Once you're satisfied with what will be merged, update your package:"
711 msgstr ""
712
713 #. type: verbatim
714 #: ../dgit-maint-merge.7.pod:390
715 #, no-wrap
716 msgid ""
717 "    % git merge 1.2.3\n"
718 "    % dch -v1.2.3-1 New upstream release.\n"
719 "    % git add debian/changelog && git commit -m changelog\n"
720 "\n"
721 msgstr ""
722
723 #. type: textblock
724 #: ../dgit-maint-merge.7.pod:396 ../dgit-maint-debrebase.7.pod:377
725 msgid ""
726 "If you obtained a tarball from upstream, you are ready to try a build.  If "
727 "you merged a git tag from upstream, you will first need to generate a "
728 "tarball:"
729 msgstr ""
730
731 #. type: =head1
732 #: ../dgit-maint-merge.7.pod:406 ../dgit-maint-debrebase.7.pod:461
733 msgid "HANDLING DFSG-NON-FREE MATERIAL"
734 msgstr ""
735
736 #. type: textblock
737 #: ../dgit-maint-merge.7.pod:410
738 msgid "We create a DFSG-clean tag to merge to master:"
739 msgstr ""
740
741 #. type: verbatim
742 #: ../dgit-maint-merge.7.pod:414
743 #, no-wrap
744 msgid ""
745 "    % git checkout -b pre-dfsg 1.2.3\n"
746 "    % git rm evil.bin\n"
747 "    % git commit -m \"upstream version 1.2.3 DFSG-cleaned\"\n"
748 "    % git tag -s 1.2.3+dfsg\n"
749 "    % git checkout master\n"
750 "    % git branch -D pre-dfsg\n"
751 "\n"
752 msgstr ""
753
754 #. type: textblock
755 #: ../dgit-maint-merge.7.pod:423
756 msgid ""
757 "Before merging the new 1.2.3+dfsg tag to master, you should first determine "
758 "whether it would be legally dangerous for the non-free material to be "
759 "publicly accessible in the git history on B<dgit-repos>."
760 msgstr ""
761
762 #. type: textblock
763 #: ../dgit-maint-merge.7.pod:428
764 msgid ""
765 "If it would be dangerous, there is a big problem; in this case please "
766 "consult your archive administrators (for Debian this is the dgit "
767 "administrator dgit-owner@debian.org and the ftpmasters ftpmaster@ftp-master."
768 "debian.org)."
769 msgstr ""
770
771 #. type: textblock
772 #: ../dgit-maint-merge.7.pod:435 ../dgit-maint-debrebase.7.pod:521
773 msgid ""
774 "The easiest way to handle this is to add a B<Files-Excluded> field to "
775 "I<debian/copyright>, and a B<uversionmangle> setting in I<debian/watch>.  "
776 "See uscan(1).  Alternatively, see the I<--filter> option detailed in gbp-"
777 "import-orig(1)."
778 msgstr ""
779
780 #. type: =head1
781 #: ../dgit-maint-merge.7.pod:440
782 msgid "FORWARDING PATCHES UPSTREAM"
783 msgstr ""
784
785 #. type: textblock
786 #: ../dgit-maint-merge.7.pod:442
787 msgid "The basic steps are:"
788 msgstr ""
789
790 #. type: textblock
791 #: ../dgit-maint-merge.7.pod:448
792 msgid "Create a new branch based off upstream's master branch."
793 msgstr ""
794
795 #. type: textblock
796 #: ../dgit-maint-merge.7.pod:452
797 msgid ""
798 "git-cherry-pick(1) commits from your master branch onto your new branch."
799 msgstr ""
800
801 #. type: textblock
802 #: ../dgit-maint-merge.7.pod:457
803 msgid ""
804 "Push the branch somewhere and ask upstream to merge it, or use git-format-"
805 "patch(1) or git-request-pull(1)."
806 msgstr ""
807
808 #. type: textblock
809 #: ../dgit-maint-merge.7.pod:462
810 msgid "For example (and it is only an example):"
811 msgstr ""
812
813 #. type: verbatim
814 #: ../dgit-maint-merge.7.pod:466
815 #, no-wrap
816 msgid ""
817 "    % # fork foo.git on GitHub\n"
818 "    % git remote add -f fork git@github.com:spwhitton/foo.git\n"
819 "    % git checkout -b fix-error upstream/master\n"
820 "    % git config branch.fix-error.pushRemote fork\n"
821 "    % git cherry-pick master^2\n"
822 "    % git push\n"
823 "    % # submit pull request on GitHub\n"
824 "\n"
825 msgstr ""
826
827 #. type: textblock
828 #: ../dgit-maint-merge.7.pod:476
829 msgid ""
830 "Note that when you merge an upstream release containing your forwarded "
831 "patches, git and dgit will transparently handle \"dropping\" the patches "
832 "that have been forwarded, \"retaining\" the ones that haven't."
833 msgstr ""
834
835 #. type: =head1
836 #: ../dgit-maint-merge.7.pod:480 ../dgit-maint-gbp.7.pod:130
837 #: ../dgit-maint-debrebase.7.pod:526
838 msgid "INCORPORATING NMUS"
839 msgstr ""
840
841 #. type: textblock
842 #: ../dgit-maint-merge.7.pod:488
843 msgid ""
844 "Alternatively, you can apply the NMU diff to your repository.  The next push "
845 "will then require I<--overwrite>."
846 msgstr ""
847
848 #. type: =head1
849 #: ../dgit-maint-merge.7.pod:495 ../dgit-maint-gbp.7.pod:140
850 #: ../dgit-maint-debrebase.7.pod:726
851 msgid "AUTHOR"
852 msgstr ""
853
854 #. type: textblock
855 #: ../dgit-maint-merge.7.pod:497 ../dgit-maint-debrebase.7.pod:728
856 msgid ""
857 "This tutorial was written and is maintained by Sean Whitton "
858 "<spwhitton@spwhitton.name>.  It contains contributions from other dgit "
859 "contributors too - see the dgit copyright file."
860 msgstr ""