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