chiark / gitweb /
changelog: start 9.14
[dgit.git] / po4a / git-debrebase_5.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: 2019-03-01 16:59+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 #: ../git-debrebase.1.pod:1 ../git-debrebase.5.pod:1
25 #, no-wrap
26 msgid "NAME"
27 msgstr ""
28
29 #. type: =head1
30 #: ../dgit.1:1470 ../dgit.7:23 ../dgit-user.7.pod:447
31 #: ../dgit-nmu-simple.7.pod:137 ../dgit-maint-native.7.pod:126
32 #: ../dgit-maint-merge.7.pod:491 ../dgit-maint-gbp.7.pod:136
33 #: ../dgit-maint-debrebase.7.pod:747 ../dgit-downstream-dsc.7.pod:352
34 #: ../dgit-sponsorship.7.pod:321 ../git-debrebase.1.pod:619
35 #: ../git-debrebase.5.pod:678
36 #, no-wrap
37 msgid "SEE ALSO"
38 msgstr ""
39
40 #. type: =head1
41 #: ../dgit-user.7.pod:5 ../dgit-maint-native.7.pod:5
42 #: ../dgit-maint-merge.7.pod:5 ../dgit-maint-gbp.7.pod:5
43 #: ../dgit-maint-debrebase.7.pod:5 ../dgit-downstream-dsc.7.pod:5
44 #: ../git-debrebase.1.pod:10 ../git-debrebase.5.pod:5
45 msgid "INTRODUCTION"
46 msgstr ""
47
48 #. type: textblock
49 #: ../git-debrebase.1.pod:12 ../git-debrebase.5.pod:7
50 msgid ""
51 "git-debrebase is a tool for representing in git, and manpulating, Debian "
52 "packages based on upstream source code."
53 msgstr ""
54
55 #. type: textblock
56 #: ../git-debrebase.5.pod:3
57 msgid "git-debrebase - git data model for Debian packaging"
58 msgstr ""
59
60 #. type: textblock
61 #: ../git-debrebase.5.pod:11
62 msgid ""
63 "The Debian packaging has a fast forwarding history.  The delta queue "
64 "(changes to upstream files) is represented as a series of individual git "
65 "commits, which can worked on with rebase, and also shared."
66 msgstr ""
67
68 #. type: =head2
69 #: ../git-debrebase.5.pod:18
70 msgid "DISCUSSION"
71 msgstr ""
72
73 #. type: textblock
74 #: ../git-debrebase.5.pod:20
75 msgid ""
76 "git-debrebase is designed to work well with dgit.  git-debrebase can also be "
77 "used in workflows without source packages, for example to work on Debian-"
78 "format packages outside or alongside Debian."
79 msgstr ""
80
81 #. type: textblock
82 #: ../git-debrebase.5.pod:24
83 msgid ""
84 "git-debrebase itself is not very suitable for use by Debian derivatives, to "
85 "work on packages inherited from Debian, because it assumes that you want to "
86 "throw away any packaging provided by your upstream.  However, use of git-"
87 "debrebase in Debian does not make anything harder for derivatives, and it "
88 "can make some things easier."
89 msgstr ""
90
91 #. type: textblock
92 #: ../git-debrebase.5.pod:32
93 msgid ""
94 "When using gitk on branches managed by git-debrebase, B<gitk --date-order>, "
95 "B<gitk --first-parent> and B<gitk -- :.> (or B<gitk .>)  produce more useful "
96 "output than the default."
97 msgstr ""
98
99 #. type: =head1
100 #: ../git-debrebase.5.pod:37
101 msgid "TERMINOLOGY"
102 msgstr ""
103
104 #. type: =item
105 #: ../git-debrebase.5.pod:41
106 msgid "Pseudomerge"
107 msgstr ""
108
109 #. type: textblock
110 #: ../git-debrebase.5.pod:43
111 msgid ""
112 "A merge which does not actually merge the trees; instead, it is constructed "
113 "by taking the tree from one of the parents (ignoring the contents of the "
114 "other parents).  These are used to make a rewritten history fast forward "
115 "from a previous tip, so that it can be pushed and pulled normally.  Manual "
116 "construction of pseudomerges can be done with C<git merge -s ours> but is "
117 "not normally needed when using git-debrebase."
118 msgstr ""
119
120 #. type: =item
121 #: ../git-debrebase.5.pod:54
122 msgid "Packaging files"
123 msgstr ""
124
125 #. type: textblock
126 #: ../git-debrebase.5.pod:56
127 msgid ""
128 "Files in the source tree within B<debian/>, excluding anything in B<debian/"
129 "patches/>."
130 msgstr ""
131
132 #. type: =item
133 #: ../git-debrebase.5.pod:59
134 msgid "Upstream"
135 msgstr ""
136
137 #. type: textblock
138 #: ../git-debrebase.5.pod:61
139 msgid ""
140 "The version of the package without Debian's packaging.  Typically provided "
141 "by the actual upstream project, and sometimes tracked by Debian contributors "
142 "in a branch C<upstream>."
143 msgstr ""
144
145 #. type: textblock
146 #: ../git-debrebase.5.pod:65
147 msgid ""
148 "Upstream contains upstream files, but some upstreams also contain packaging "
149 "files in B<debian/>.  Any such non-upstream files found in upstream are "
150 "thrown away by git-debrebase each time a new upstream version is "
151 "incorporated."
152 msgstr ""
153
154 #. type: =item
155 #: ../git-debrebase.5.pod:71
156 msgid "Upstream files"
157 msgstr ""
158
159 #. type: textblock
160 #: ../git-debrebase.5.pod:73
161 msgid ""
162 "Files in the source tree outside B<debian/>.  These may include unmodified "
163 "source from upstream, but also files which have been modified or created for "
164 "Debian."
165 msgstr ""
166
167 #. type: =item
168 #: ../git-debrebase.5.pod:77
169 msgid "Delta queue"
170 msgstr ""
171
172 #. type: textblock
173 #: ../git-debrebase.5.pod:79
174 msgid "Debian's changes to upstream files: a series of git commits."
175 msgstr ""
176
177 #. type: =item
178 #: ../git-debrebase.5.pod:82
179 msgid "Quilt patches"
180 msgstr ""
181
182 #. type: textblock
183 #: ../git-debrebase.5.pod:84
184 msgid ""
185 "Files in B<debian/patches/> generated for the benefit of dpkg-source's 3.0 "
186 "(quilt) .dsc source package format.  Not used, often deleted, and "
187 "regenerated when needed (such as when uploading to Debian), by git-debrebase."
188 msgstr ""
189
190 #. type: =item
191 #: ../git-debrebase.5.pod:90
192 msgid "Interchange branch; breakwater; stitched; laundered"
193 msgstr ""
194
195 #. type: textblock
196 #: ../git-debrebase.5.pod:92
197 msgid "See L</BRANCHES AND BRANCH STATES - OVERVIEW>."
198 msgstr ""
199
200 #. type: =item
201 #: ../git-debrebase.5.pod:94
202 msgid "Anchor; Packaging"
203 msgstr ""
204
205 #. type: textblock
206 #: ../git-debrebase.5.pod:96
207 msgid "See L</BRANCH CONTENTS - DETAILED SPECIFICATION>."
208 msgstr ""
209
210 #. type: =item
211 #: ../git-debrebase.5.pod:98
212 msgid "ffq-prev; debrebase-last"
213 msgstr ""
214
215 #. type: textblock
216 #: ../git-debrebase.5.pod:100
217 msgid "See L</STITCHING, PSEUDO-MERGES, FFQ RECORD>."
218 msgstr ""
219
220 #. type: =head1
221 #: ../git-debrebase.5.pod:104
222 msgid "DIAGRAM"
223 msgstr ""
224
225 #. type: verbatim
226 #: ../git-debrebase.5.pod:106
227 #, no-wrap
228 msgid ""
229 "           ------/--A!----/--B3!--%--/--> interchange view\n"
230 "                /        /          /      with debian/ directory\n"
231 "               %        %          %       entire delta queue applied\n"
232 "              /        /          /        3.0 (quilt) has debian/patches\n"
233 "             /        /          3*       \"master\" on Debian git servers\n"
234 "            /        /          /\n"
235 "           2*       2*         2\n"
236 "          /        /          /\n"
237 "         1        1          1    breakwater branch, merging baseline\n"
238 "        /        /          /     unmodified upstream code\n"
239 "    ---@-----@--A----@--B--C      plus debian/ (but no debian/patches)\n"
240 "      /     /       /                     no ref refers to this: we\n"
241 "   --#-----#-------#-----> upstream        reconstruct its identity by\n"
242 "                                           inspecting interchange branch\n"
243 "    Key:\n"
244 "\n"
245 msgstr ""
246
247 #. type: verbatim
248 #: ../git-debrebase.5.pod:122
249 #, no-wrap
250 msgid ""
251 "      1,2,3   commits touching upstream files only\n"
252 "      A,B,C   commits touching debian/ only\n"
253 "      B3      mixed commit (eg made by an NMUer)\n"
254 "      #       upstream releases\n"
255 "\n"
256 msgstr ""
257
258 #. type: verbatim
259 #: ../git-debrebase.5.pod:127
260 #, no-wrap
261 msgid ""
262 "     -@-      anchor merge, takes contents of debian/ from the\n"
263 "     /         previous `breakwater' commit and rest from upstream\n"
264 "\n"
265 msgstr ""
266
267 #. type: verbatim
268 #: ../git-debrebase.5.pod:130
269 #, no-wrap
270 msgid ""
271 "     -/-      pseudomerge; contents are identical to\n"
272 "     /         parent lower on diagram.\n"
273 "\n"
274 msgstr ""
275
276 #. type: verbatim
277 #: ../git-debrebase.5.pod:133
278 #, no-wrap
279 msgid ""
280 "      %       dgit- or git-debrebase- generated commit of debian/patches.\n"
281 "              `3.0 (quilt)' only; generally dropped by git-debrebase.\n"
282 "\n"
283 msgstr ""
284
285 #. type: verbatim
286 #: ../git-debrebase.5.pod:136
287 #, no-wrap
288 msgid ""
289 "      *       Maintainer's HEAD was here while they were editing,\n"
290 "              before they said they were done, at which point their\n"
291 "              tools made -/- (and maybe %) to convert to\n"
292 "              the fast-forwarding interchange branch.\n"
293 "\n"
294 msgstr ""
295
296 #. type: verbatim
297 #: ../git-debrebase.5.pod:141
298 #, no-wrap
299 msgid ""
300 "      !       NMUer's HEAD was here when they said `dgit push'.\n"
301 "              Rebase branch launderer turns each ! into an\n"
302 "              equivalent *.\n"
303 "\n"
304 msgstr ""
305
306 #. type: =head1
307 #: ../git-debrebase.5.pod:145
308 msgid "BRANCHES AND BRANCH STATES - OVERVIEW"
309 msgstr ""
310
311 #. type: textblock
312 #: ../git-debrebase.5.pod:147
313 msgid ""
314 "git-debrebase has one primary branch, the B<interchange branch>.  This "
315 "branch is found on Debian contributors' workstations (typically, a "
316 "maintainer would call it B<master>), in the Debian dgit git server as the "
317 "suite branch (B<dgit/dgit/sid>)  and on other git servers which support "
318 "Debian work (eg B<master> on salsa)."
319 msgstr ""
320
321 #. type: textblock
322 #: ../git-debrebase.5.pod:155
323 msgid ""
324 "The interchange branch is fast-forwarding (by virtue of pseudomerges, where "
325 "necessary)."
326 msgstr ""
327
328 #. type: textblock
329 #: ../git-debrebase.5.pod:158
330 msgid ""
331 "It is possible to have multiple different interchange branches for the same "
332 "package, stored as different local and remote git branches.  However, "
333 "divergence should be avoided where possible - see L</OTHER MERGES>."
334 msgstr ""
335
336 #. type: textblock
337 #: ../git-debrebase.5.pod:164
338 msgid ""
339 "A suitable interchange branch can be used directly with dgit.  In this case "
340 "each dgit archive suite branch is a separate interchange branch."
341 msgstr ""
342
343 #. type: textblock
344 #: ../git-debrebase.5.pod:168
345 msgid ""
346 "Within the ancestry of the interchange branch, there is another important, "
347 "implicit branch, the B<breakwater>.  The breakwater contains unmodified "
348 "upstream source, but with Debian's packaging superimposed (replacing any "
349 "C<debian/> directory that may be in the upstream commits).  The breakwater "
350 "does not contain any representation of the delta queue (not even debian/"
351 "patches).  The part of the breakwater processed by git-debrebase is the part "
352 "since the most recent B<anchor>, which is usually a special merge generated "
353 "by git-debrebase."
354 msgstr ""
355
356 #. type: textblock
357 #: ../git-debrebase.5.pod:181
358 msgid ""
359 "When working, locally, the user's branch can be in a rebasing state, known "
360 "as B<unstitched>.  While a branch is unstitched, it is not in interchange "
361 "format.  The previous interchange branch tip is recorded, so that the "
362 "previous history and the user's work can later be stitched into the fast-"
363 "forwarding interchange form."
364 msgstr ""
365
366 #. type: textblock
367 #: ../git-debrebase.5.pod:193
368 msgid ""
369 "An unstitched branch may be in B<laundered> state, which means it has a more "
370 "particular special form convenient for manipulating the delta queue."
371 msgstr ""
372
373 #. type: =head1
374 #: ../git-debrebase.5.pod:199
375 msgid "BRANCH CONTENTS - DETAILED SPECIFICATION"
376 msgstr ""
377
378 #. type: textblock
379 #: ../git-debrebase.5.pod:201
380 msgid ""
381 "It is most convenient to describe the B<breakwater> branch first.  A "
382 "breakwater is B<fast-forwarding>, but is not usually named by a ref.  It "
383 "contains B<in this order> (ancestors first):"
384 msgstr ""
385
386 #. type: =item
387 #: ../git-debrebase.5.pod:210
388 msgid "Anchor"
389 msgstr ""
390
391 #. type: textblock
392 #: ../git-debrebase.5.pod:212
393 msgid "An B<anchor> commit, which is usually a special two-parent merge:"
394 msgstr ""
395
396 #. type: textblock
397 #: ../git-debrebase.5.pod:215
398 msgid ""
399 "The first parent contains the most recent version, at that point, of the "
400 "Debian packaging (in debian/); it also often contains upstream files, but "
401 "they are to be ignored.  Often the first parent is a previous breakwater tip."
402 msgstr ""
403
404 #. type: textblock
405 #: ../git-debrebase.5.pod:222
406 msgid ""
407 "The second parent is an upstream source commit.  It may sometimes contain a "
408 "debian/ subdirectory, but if so that is to be ignored.  The second parent's "
409 "upstream files are identical to the anchor's.  Anchor merges always contain "
410 "C<[git-debrebase anchor: ...]> as a line in the commit message."
411 msgstr ""
412
413 #. type: textblock
414 #: ../git-debrebase.5.pod:232
415 msgid ""
416 "Alternatively, an anchor may be a single-parent commit which introduces the "
417 "C<debian/> directory and makes no other changes: ie, the start of Debian "
418 "packaging."
419 msgstr ""
420
421 #. type: =item
422 #: ../git-debrebase.5.pod:237
423 msgid "Packaging"
424 msgstr ""
425
426 #. type: textblock
427 #: ../git-debrebase.5.pod:239
428 msgid ""
429 "Zero or more single-parent commits containing only packaging changes.  (And "
430 "no quilt patch changes.)"
431 msgstr ""
432
433 #. type: textblock
434 #: ../git-debrebase.5.pod:245
435 msgid ""
436 "The B<laundered> branch state is B<rebasing>.  A laundered branch is based "
437 "on a breakwater but also contains, additionally, B<after> the breakwater, a "
438 "representation of the delta queue:"
439 msgstr ""
440
441 #. type: =item
442 #: ../git-debrebase.5.pod:255
443 msgid "Delta queue commits"
444 msgstr ""
445
446 #. type: textblock
447 #: ../git-debrebase.5.pod:257
448 msgid ""
449 "Zero or more single-parent commits containing only changes to upstream files."
450 msgstr ""
451
452 #. type: textblock
453 #: ../git-debrebase.5.pod:262
454 msgid ""
455 "The merely B<unstitched> (ie, unstitched but unlaundered)  branch state is "
456 "also B<rebasing>.  It has the same contents as the laundered state, except "
457 "that it may contain, additionally, B<in any order but after the breakwater>:"
458 msgstr ""
459
460 #. type: =item
461 #: ../git-debrebase.5.pod:273
462 msgid "Linear commits to the source"
463 msgstr ""
464
465 #. type: textblock
466 #: ../git-debrebase.5.pod:275
467 msgid ""
468 "Further commit(s) containing changes to to upstream files and/or to "
469 "packaging, possibly mixed within a single commit.  (But not quilt patch "
470 "changes.)"
471 msgstr ""
472
473 #. type: =item
474 #: ../git-debrebase.5.pod:282
475 msgid "Quilt patch addition for `3.0 (quilt)'"
476 msgstr ""
477
478 #. type: textblock
479 #: ../git-debrebase.5.pod:284
480 msgid ""
481 "Commit(s) which add patches to B<debian/patches/>, and add those patches to "
482 "the end of B<series>."
483 msgstr ""
484
485 #. type: textblock
486 #: ../git-debrebase.5.pod:287
487 msgid ""
488 "These are only necessary when working with packages in C<.dsc 3.0 (quilt)> "
489 "format.  For git-debrebase they are purely an output; they are deleted when "
490 "branches are laundered.  git-debrebase takes care to make a proper patch "
491 "series out of the delta queue, so that any resulting source packages are "
492 "nice."
493 msgstr ""
494
495 #. type: textblock
496 #: ../git-debrebase.5.pod:297
497 msgid ""
498 "Finally, an B<interchange> branch is B<fast forwarding>.  It has the same "
499 "contents as an unlaundered branch state, but may (and usually will) "
500 "additionally contain (in some order, possibly intermixed with the extra "
501 "commits which may be found on an unstitched unlaundered branch):"
502 msgstr ""
503
504 #. type: =item
505 #: ../git-debrebase.5.pod:309
506 msgid "Pseudomerge to make fast forward"
507 msgstr ""
508
509 #. type: textblock
510 #: ../git-debrebase.5.pod:311
511 msgid ""
512 "A pseudomerge making the branch fast forward from previous history.  The "
513 "contributing parent is itself in interchange format.  Normally the "
514 "overwritten parent is a previous tip of an interchange branch, but this is "
515 "not necessary as the overwritten parent is not examined."
516 msgstr ""
517
518 #. type: textblock
519 #: ../git-debrebase.5.pod:319
520 msgid ""
521 "If the two parents have identical trees, the one with the later commit date "
522 "(or, if the commit dates are the same, the first parent)  is treated as the "
523 "contributing parent."
524 msgstr ""
525
526 #. type: =item
527 #: ../git-debrebase.5.pod:326
528 msgid "dgit dsc import pseudomerge"
529 msgstr ""
530
531 #. type: textblock
532 #: ../git-debrebase.5.pod:328
533 msgid ""
534 "Debian .dsc source package import(s)  made by dgit (during dgit fetch of a "
535 "package most recently uploaded to Debian without dgit, or during dgit import-"
536 "dsc)."
537 msgstr ""
538
539 #. type: textblock
540 #: ../git-debrebase.5.pod:334
541 msgid ""
542 "git-debrebase requires that each such import is in the fast-forwarding "
543 "format produced by dgit: a two-parent pseudomerge, whose contributing parent "
544 "is in the non-fast-forwarding dgit dsc import format (not described further "
545 "here), and whose overwritten parent is the previous interchange tip (eg, the "
546 "previous tip of the dgit suite branch)."
547 msgstr ""
548
549 #. type: =head1
550 #: ../git-debrebase.5.pod:347
551 msgid "STITCHING, PSEUDO-MERGES, FFQ RECORD"
552 msgstr ""
553
554 #. type: textblock
555 #: ../git-debrebase.5.pod:349
556 msgid ""
557 "Whenever the branch C<refs/B> is unstitched, the previous head is recorded "
558 "in the git ref C<refs/ffq-prev/B>."
559 msgstr ""
560
561 #. type: textblock
562 #: ../git-debrebase.5.pod:352
563 msgid ""
564 "Unstiched branches are not fast forward from the published interchange "
565 "branches [1].  So before a branch can be pushed, the right pseudomerge must "
566 "be reestablished.  This is the stitch operation, which consumes the ffq-prev "
567 "ref."
568 msgstr ""
569
570 #. type: textblock
571 #: ../git-debrebase.5.pod:359
572 msgid ""
573 "When the user has an unstitched branch, they may rewrite it freely, from the "
574 "breakwater tip onwards.  Such a git rebase is the default operation for git-"
575 "debrebase.  Rebases should not go back before the breakwater tip, and "
576 "certainly not before the most recent anchor."
577 msgstr ""
578
579 #. type: textblock
580 #: ../git-debrebase.5.pod:366
581 msgid ""
582 "Unstitched branches must not be pushed to interchange branch refs (by the "
583 "use of C<git push -f> or equivalent).  It is OK to share an unstitched "
584 "branch in similar circumstances and with similar warnings to sharing any "
585 "other rebasing git branch."
586 msgstr ""
587
588 #. type: textblock
589 #: ../git-debrebase.5.pod:372
590 msgid ""
591 "[1] Strictly, for a package which has never had a Debian delta queue, the "
592 "interchange and breakwater branches may be identical, in which case the "
593 "unstitched branch is fast forward from the interchange branch and no "
594 "pseudomerge is needed."
595 msgstr ""
596
597 #. type: textblock
598 #: ../git-debrebase.5.pod:378
599 msgid ""
600 "When ffq-prev is not present, C<refs/debrebase-last/B> records some ancestor "
601 "of refs/B, (usually, the result of last stitch).  This is used for status "
602 "printing and some error error checks - especially for printing guesses about "
603 "what a problem is.  To determine whether a branch is being maintained in git-"
604 "debrebase form it is necessary to walk its history."
605 msgstr ""
606
607 #. type: =head1
608 #: ../git-debrebase.5.pod:387
609 msgid "OTHER MERGES"
610 msgstr ""
611
612 #. type: textblock
613 #: ../git-debrebase.5.pod:389
614 msgid ""
615 "Note that the representation described here does not permit general merges "
616 "on any of the relevant branches.  For this reason the tools will try to help "
617 "the user avoid divergence of the interchange branch."
618 msgstr ""
619
620 #. type: textblock
621 #: ../git-debrebase.5.pod:394
622 msgid ""
623 "See dgit-maint-rebase(7)  for a discussion of what kinds of behaviours "
624 "should be be avoided because they might generate such merges."
625 msgstr ""
626
627 #. type: textblock
628 #: ../git-debrebase.5.pod:400
629 msgid ""
630 "Automatic resolution of divergent interchange branches (or laundering of "
631 "merges on the interchange branch)  is thought to be possible, but there is "
632 "no tooling for this yet:"
633 msgstr ""
634
635 #. type: textblock
636 #: ../git-debrebase.5.pod:405
637 msgid ""
638 "Nonlinear (merging) history in the interchange branch is awkward because it "
639 "(obviously) does not preserve the linearity of the delta queue.  Easy "
640 "merging of divergent delta queues is a research problem."
641 msgstr ""
642
643 #. type: textblock
644 #: ../git-debrebase.5.pod:410
645 msgid ""
646 "Nonlinear (merging) history in the breakwater branch is in principle "
647 "tolerable, but each of the parents would have to be, in turn, a breakwater, "
648 "and difficult questions arise if they don't have the same anchor."
649 msgstr ""
650
651 #. type: textblock
652 #: ../git-debrebase.5.pod:416
653 msgid ""
654 "We use the commit message annotation to distinguish the special anchor "
655 "merges from other general merges, so we can at least detect unsupported "
656 "merges."
657 msgstr ""
658
659 #. type: =head1
660 #: ../git-debrebase.5.pod:420
661 msgid "LEGAL OPERATIONS"
662 msgstr ""
663
664 #. type: textblock
665 #: ../git-debrebase.5.pod:422
666 msgid ""
667 "The following basic operations follow from this model (refer to the diagram "
668 "above):"
669 msgstr ""
670
671 #. type: =item
672 #: ../git-debrebase.5.pod:427
673 msgid "Append linear commits"
674 msgstr ""
675
676 #. type: textblock
677 #: ../git-debrebase.5.pod:429
678 msgid ""
679 "No matter the branch state, it is always fine to simply git commit (or "
680 "cherry-pick etc.)  commits containing upstream file changes, packaging "
681 "changes, or both."
682 msgstr ""
683
684 #. type: textblock
685 #: ../git-debrebase.5.pod:435
686 msgid "(This may make the branch unlaundered.)"
687 msgstr ""
688
689 #. type: =item
690 #: ../git-debrebase.5.pod:437
691 msgid "Launder branch"
692 msgstr ""
693
694 #. type: textblock
695 #: ../git-debrebase.5.pod:439
696 msgid ""
697 "Record the previous head in ffq-prev, if we were stitched before (and delete "
698 "debrebase-last)."
699 msgstr ""
700
701 #. type: textblock
702 #: ../git-debrebase.5.pod:443
703 msgid ""
704 "Reorganise the current branch so that the packaging changes come first, "
705 "followed by the delta queue, turning C<-@-A-1-2-B3> into C<...@-A-B-1-2-3>."
706 msgstr ""
707
708 #. type: textblock
709 #: ../git-debrebase.5.pod:448
710 msgid "Drop pseudomerges and any quilt patch additions."
711 msgstr ""
712
713 #. type: =item
714 #: ../git-debrebase.5.pod:450
715 msgid "Interactive rebase"
716 msgstr ""
717
718 #. type: textblock
719 #: ../git-debrebase.5.pod:452
720 msgid ""
721 "With a laundered branch, one can do an interactive git rebase of the delta "
722 "queue."
723 msgstr ""
724
725 #. type: =item
726 #: ../git-debrebase.5.pod:455
727 msgid "New upstream rebase"
728 msgstr ""
729
730 #. type: textblock
731 #: ../git-debrebase.5.pod:457
732 msgid ""
733 "Start rebasing onto a new upstream version, turning C<...#..@-A-B-1-2-3> "
734 "into C<(...#..@-A-B-, ...#'-)@'-1-2>."
735 msgstr ""
736
737 #. type: textblock
738 #: ../git-debrebase.5.pod:460
739 msgid ""
740 "This has to be a wrapper around git-rebase, which prepares @' and then tries "
741 "to rebase 1 2 onto @'.  If the user asks for an interactive rebase, @' "
742 "doesn't appear in the commit list, since @' is the newbase of the rebase "
743 "(see git-rebase(1))."
744 msgstr ""
745
746 #. type: textblock
747 #: ../git-debrebase.5.pod:466
748 msgid ""
749 "Note that the construction of @' cannot fail because @' simply copies "
750 "debian/ from B and and everything else from #'.  (Rebasing A and B is "
751 "undesirable.  We want the debian/ files to be non-rebasing so that git log "
752 "shows the packaging history.)"
753 msgstr ""
754
755 #. type: =item
756 #: ../git-debrebase.5.pod:472
757 msgid "Stitch"
758 msgstr ""
759
760 #. type: textblock
761 #: ../git-debrebase.5.pod:474
762 msgid ""
763 "Make a pseudomerge, whose contributing parent is the unstitched branch and "
764 "whose overwritten parent is ffq-prev, consuming ffq-prev in the process (and "
765 "writing debrebase-last instead).  Ideally the contributing parent would be a "
766 "laundered branch, or perhaps a laundered branch with a quilt patch addition "
767 "commit."
768 msgstr ""
769
770 #. type: =item
771 #: ../git-debrebase.5.pod:483
772 msgid "Commit quilt patches"
773 msgstr ""
774
775 #. type: textblock
776 #: ../git-debrebase.5.pod:485
777 msgid ""
778 "To generate a tree which can be represented as a 3.0 (quilt) .dsc source "
779 "package, the delta queue must be reified inside the git tree in B<debian/"
780 "patches/>.  These patch files can be stripped out and/or regenerated as "
781 "needed."
782 msgstr ""
783
784 #. type: =head1
785 #: ../git-debrebase.5.pod:493
786 msgid "ILLEGAL OPERATIONS"
787 msgstr ""
788
789 #. type: textblock
790 #: ../git-debrebase.5.pod:495
791 msgid ""
792 "Some git operations are not permitted in this data model.  Performing them "
793 "will break git-debrebase."
794 msgstr ""
795
796 #. type: =item
797 #: ../git-debrebase.5.pod:500
798 msgid "General merges"
799 msgstr ""
800
801 #. type: textblock
802 #: ../git-debrebase.5.pod:502
803 msgid "See L</OTHER MERGES>, above."
804 msgstr ""
805
806 #. type: =item
807 #: ../git-debrebase.5.pod:504
808 msgid "git-rebase starting too soon, or without base argument"
809 msgstr ""
810
811 #. type: textblock
812 #: ../git-debrebase.5.pod:506
813 msgid ""
814 "git-rebase must not be invoked in such a way that the chosen base is before "
815 "the anchor, or before the last pseudomerge.  This is because git-rebase "
816 "mangles merges.  git rebase --preserve-merges is also dangerous."
817 msgstr ""
818
819 #. type: textblock
820 #: ../git-debrebase.5.pod:512
821 msgid "git-rebase without a base argument will often start too early."
822 msgstr ""
823
824 #. type: textblock
825 #: ../git-debrebase.5.pod:514
826 msgid ""
827 "For these reasons, it is better to use git-debrebase and let it choose the "
828 "base for your rebase.  If you do realise you have made this mistake, it is "
829 "best to use the reflog to recover to a suitable good previous state."
830 msgstr ""
831
832 #. type: =item
833 #: ../git-debrebase.5.pod:522
834 msgid "Editing debian/patches"
835 msgstr ""
836
837 #. type: textblock
838 #: ../git-debrebase.5.pod:524
839 msgid ""
840 "debian/patches is an output from git-debrebase, not an input.  If you edit "
841 "patches git-debrebase will complain and refuse to work.  If you add patches "
842 "your work is likely to be discarded."
843 msgstr ""
844
845 #. type: textblock
846 #: ../git-debrebase.5.pod:530
847 msgid ""
848 "Instead of editing patches, use git-debrebase to edit the corresponding "
849 "commits."
850 msgstr ""
851
852 #. type: =item
853 #: ../git-debrebase.5.pod:533
854 msgid "Renaming (etc.) branch while unstitched"
855 msgstr ""
856
857 #. type: textblock
858 #: ../git-debrebase.5.pod:535
859 msgid ""
860 "The previous HEAD, which will be pseudomerged over by operations like git-"
861 "debrebase stitch, is recorded in a ref name dervied from your branch name."
862 msgstr ""
863
864 #. type: textblock
865 #: ../git-debrebase.5.pod:540
866 msgid ""
867 "If you rename unstitched branches, this information can get out of step."
868 msgstr ""
869
870 #. type: textblock
871 #: ../git-debrebase.5.pod:543
872 msgid ""
873 "Conversely, creating a new branch from an unstitched branch is good for "
874 "making a branch to play about in, but the result cannot be stitched."
875 msgstr ""
876
877 #. type: =head1
878 #: ../git-debrebase.5.pod:550
879 msgid "COMMIT MESSAGE ANNOTATIONS"
880 msgstr ""
881
882 #. type: textblock
883 #: ../git-debrebase.5.pod:552
884 msgid ""
885 "git-debrebase makes annotations in the messages of commits it generates."
886 msgstr ""
887
888 #. type: textblock
889 #: ../git-debrebase.5.pod:555
890 msgid "The general form is"
891 msgstr ""
892
893 #. type: verbatim
894 #: ../git-debrebase.5.pod:557
895 #, no-wrap
896 msgid ""
897 "  [git-debrebase COMMIT-TYPE [ ARGS...]: PROSE, MORE PROSE]\n"
898 "\n"
899 msgstr ""
900
901 #. type: textblock
902 #: ../git-debrebase.5.pod:559
903 msgid ""
904 "git-debrebase treats anything after the colon as a comment, paying no "
905 "attention to PROSE."
906 msgstr ""
907
908 #. type: verbatim
909 #: ../git-debrebase.5.pod:562
910 #, no-wrap
911 msgid ""
912 "The full set of annotations is:\n"
913 "  [git-debrebase split: mixed commit, debian part]\n"
914 "  [git-debrebase split: mixed commit, upstream-part]\n"
915 "  [git-debrebase onvert dgit import: debian changes]\n"
916 "  [git-debrebase anchor: convert dgit import, upstream changes]\n"
917 "\n"
918 msgstr ""
919
920 #. type: verbatim
921 #: ../git-debrebase.5.pod:568
922 #, no-wrap
923 msgid ""
924 "  [git-debrebase upstream-combine . PIECE[ PIECE...]: new upstream]\n"
925 "  [git-debrebase anchor: new upstream NEW-UPSTREAM-VERSION, merge]\n"
926 "  [git-debrebase changelog: new upstream NEW-UPSTREAM-VERSION]\n"
927 "  [git-debrebase make-patches: export and commit patches]\n"
928 "\n"
929 msgstr ""
930
931 #. type: verbatim
932 #: ../git-debrebase.5.pod:573
933 #, no-wrap
934 msgid ""
935 "  [git-debrebase convert-from-gbp: drop patches]\n"
936 "  [git-debrebase anchor: declare upstream]\n"
937 "  [git-debrebase pseudomerge: stitch]\n"
938 "\n"
939 msgstr ""
940
941 #. type: verbatim
942 #: ../git-debrebase.5.pod:577
943 #, no-wrap
944 msgid ""
945 "  [git-debrebase merged-breakwater: constructed from vanilla merge]\n"
946 "\n"
947 msgstr ""
948
949 #. type: verbatim
950 #: ../git-debrebase.5.pod:579
951 #, no-wrap
952 msgid ""
953 "  [git-debrebase convert-to-gbp: commit patches]\n"
954 "  [git-debrebase convert-from-dgit-view upstream-import-convert: VERSION]\n"
955 "  [git-debrebase convert-from-dgit-view drop-patches]\n"
956 "\n"
957 msgstr ""
958
959 #. type: textblock
960 #: ../git-debrebase.5.pod:583
961 msgid ""
962 "Only anchor merges have the C<[git-debrebase anchor: ...]> tag.  Single-"
963 "parent anchors are not generated by git-debrebase, and when made manually "
964 "should not contain any C<[git-debrebase ...]> annotation."
965 msgstr ""
966
967 #. type: textblock
968 #: ../git-debrebase.5.pod:588
969 msgid ""
970 "The C<split mixed commit> and C<convert dgit import> tags are added to the "
971 "pre-existing commit message, when git-debrebase rewrites the commit."
972 msgstr ""
973
974 #. type: =head1
975 #: ../git-debrebase.5.pod:592
976 msgid "APPENDIX - DGIT IMPORT HANDLING"
977 msgstr ""
978
979 #. type: textblock
980 #: ../git-debrebase.5.pod:594
981 msgid ""
982 "The dgit .dsc import format is not documented or specified (so some of the "
983 "following terms are not defined anywhere).  The dgit import format it is "
984 "defined by the implementation in dgit, of which git-debrebase has special "
985 "knowledge."
986 msgstr ""
987
988 #. type: textblock
989 #: ../git-debrebase.5.pod:599
990 msgid "Consider a non-dgit NMU followed by a dgit NMU:"
991 msgstr ""
992
993 #. type: verbatim
994 #: ../git-debrebase.5.pod:601
995 #, no-wrap
996 msgid ""
997 "            interchange --/--B3!--%--//----D*-->\n"
998 "                         /          /\n"
999 "                        %          4\n"
1000 "                       /          3\n"
1001 "                      /          2\n"
1002 "                     /          1\n"
1003 "                    2          &_\n"
1004 "                   /          /| \\\n"
1005 "                  1          0 00 =XBC%\n"
1006 "                 /\n"
1007 "                /\n"
1008 "          --@--A     breakwater\n"
1009 "           /\n"
1010 "        --#--------> upstream\n"
1011 "\n"
1012 msgstr ""
1013
1014 #. type: verbatim
1015 #: ../git-debrebase.5.pod:617
1016 #, no-wrap
1017 msgid ""
1018 " Supplementary key:\n"
1019 "\n"
1020 msgstr ""
1021
1022 #. type: verbatim
1023 #: ../git-debrebase.5.pod:619
1024 #, no-wrap
1025 msgid ""
1026 "    =XBC%     dgit tarball import of .debian.tar.gz containing\n"
1027 "               Debian packaging including changes B C and quilt patches\n"
1028 "    0         dgit tarball import of upstream tarball\n"
1029 "    00        dgit tarball import of supplementary upstream piece\n"
1030 "    &_        dgit import nearly-breakwater-anchor\n"
1031 "    //        dgit fetch / import-dsc pseudomerge to make fast forward\n"
1032 "\n"
1033 msgstr ""
1034
1035 #. type: verbatim
1036 #: ../git-debrebase.5.pod:626
1037 #, no-wrap
1038 msgid ""
1039 "    &'        git-debrebase converted import (upstream files only)\n"
1040 "    C'        git-debrebase converted packaging change import\n"
1041 "\n"
1042 msgstr ""
1043
1044 #. type: verbatim
1045 #: ../git-debrebase.5.pod:629
1046 #, no-wrap
1047 msgid ""
1048 "    * **      before and after HEAD\n"
1049 "\n"
1050 msgstr ""
1051
1052 #. type: textblock
1053 #: ../git-debrebase.5.pod:631
1054 msgid "We want to transform this into:"
1055 msgstr ""
1056
1057 #. type: =item
1058 #: ../git-debrebase.5.pod:635
1059 msgid "I. No new upstream version"
1060 msgstr ""
1061
1062 #. type: verbatim
1063 #: ../git-debrebase.5.pod:637
1064 #, no-wrap
1065 msgid ""
1066 " (0 + 00 eq #)\n"
1067 "                        --/--B3!--%--//-----D*-------------/-->\n"
1068 "                         /          /                     /\n"
1069 "                        %          4                     4**\n"
1070 "                       /          3                     3\n"
1071 "                      /          2                     2\n"
1072 "                     /          1                     1\n"
1073 "                    2          &_                    /\n"
1074 "                   /          /| \\                  /\n"
1075 "                  1          0 00 =XBC%            /\n"
1076 "                 /                                /\n"
1077 "                /                                /\n"
1078 "          --@--A-----B---------------------C'---D\n"
1079 "           /\n"
1080 "        --#----------------------------------------->\n"
1081 "\n"
1082 msgstr ""
1083
1084 #. type: =item
1085 #: ../git-debrebase.5.pod:653
1086 msgid "II. New upstream"
1087 msgstr ""
1088
1089 #. type: verbatim
1090 #: ../git-debrebase.5.pod:655
1091 #, no-wrap
1092 msgid ""
1093 " (0 + 00 neq #)\n"
1094 "\n"
1095 msgstr ""
1096
1097 #. type: verbatim
1098 #: ../git-debrebase.5.pod:657
1099 #, no-wrap
1100 msgid ""
1101 "                        --/--B3!--%--//-----D*-------------/-->\n"
1102 "                         /          /                     /\n"
1103 "                        %          4                     4**\n"
1104 "                       /          3                     3\n"
1105 "                      /          2                     2\n"
1106 "                     /          1                     1\n"
1107 "                    2          &_                    /\n"
1108 "                   /          /| \\                  /\n"
1109 "                  1          0 00 =XBC%            /\n"
1110 "                 /                                /\n"
1111 "                /                                /\n"
1112 "          --@--A-----B-----------------@---C'---D\n"
1113 "           /                          /\n"
1114 "        --#--------------------- - - / - - --------->\n"
1115 "                                    /\n"
1116 "                                   &'\n"
1117 "                                  /|\n"
1118 "                                 0 00\n"
1119 "\n"
1120 msgstr ""
1121
1122 #. type: textblock
1123 #: ../git-debrebase.5.pod:680
1124 msgid "git-debrebase(1), dgit-maint-rebase(7), dgit(1)"
1125 msgstr ""