X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=git-debrebase.1.pod;h=9ddf9390b40781b2aad7724c5c29685aadfe7c58;hb=2e4434dbec72dd4a042d2fc3beab9db88943b2c8;hp=ce442dafad0ead2dfd91bcdf371d20c5187d8cf0;hpb=952789d95a825aff6524ec45829ed0d9bfd50f6d;p=dgit.git diff --git a/git-debrebase.1.pod b/git-debrebase.1.pod index ce442daf..9ddf9390 100644 --- a/git-debrebase.1.pod +++ b/git-debrebase.1.pod @@ -155,6 +155,38 @@ that its command line syntax is optimal. We may want to introduce an incompatible replacement syntax under the name C. +=item git-debrebase convert-from-gbp [] + +Cnnverts a gbp patches-unapplied branch +(not a gbp pq patch queue branch) +into a git-debrebase interchange branch. + +This is done by generating a new anchor merge, +converting the quilt patches as a delta queue, +and dropping the patches from the tree. + +The upstream commitish should correspond to +the gbp upstream branch. +It is a problem if it is not an ancestor of HEAD, +or if the history between the upstream and HEAD +contains commits which make changes to upstream files. + +It is also a problem if the specified upstream +has a debian/ subdirectory. +This check exists to detect certain likely user errors, +but if this situation is true and expected, +forcing it is fine. + +The result is a well-formed git-debrebase interchange branch. +The result is also fast-forward from the gbp branch. + +Note that it is dangerous not to know whether you are +dealing with a gbp patches-unappled branch containing quilt patches, +or a git-debrebase interchange branch. +At worst, +using the wrong tool for the branch format might result in +a dropped patch queue! + =back =head1 UNDERLYING AND SUPPLEMENTARY OPERATIONS @@ -166,6 +198,111 @@ under the name C. Prints the breakwater tip commitid. Fails if your HEAD branch is not laundered. +=item git-debrebase analyse + +Walks the history of the current branch, +most recent commit first, +back until the most recent anchor, +printing the commit object id, +and commit type and info +(ie the semantics in the git-debrebase model) +for each commit. + +=item git-debrebase record-ffq-prev + +Establishes the current branch's ffq-prev, +as discussed in L, +but does not launder the branch or move HEAD. + +It is an error if the ffq-prev could not be recorded. +It is also an error if an ffq-prev has already been recorded, +unless --noop-ok. + +=item git-debrebase launder-v0 + +Launders the branch without recording anything in ffq-prev. +Then prints some information about the current branch. +Do not use this operation; +it will be withdrawn soon. + +=item git-debrebase convert-to-gbp + +Converts a laundered branch into a +gbp patches-unapplied branch containing quilt patches. +The result is not fast forward from the interchange branch, +and any ffq-prev is deleted. + +This is provided mostly for the test suite +and for unusual situations. +It should only be used with a care and +with a proper understanding of the underlying theory. + +Be sure to not accidentally treat the result as +a git-debrebase branch, +or you will drop all the patches! + +=back + +=head1 OPTIONS + +This section documents the general options +to git-debrebase +(ie, the ones which follow git-debrebase). +Individual operations may have their own options which are +docuented under each operation. + +=over + +=item -f + +Turns problems with id into warnings. + +Some troublesome things which git-debrebase encounters +are Bs. +(The specific instances are discussed +in the text for the relvant operation.) + +When a problem is detected, +a message is printed to stderr containing the problem id +(in the form C<-f>), +along with some prose. + +If problems are detected, git-debrebase does not continue, +unless the relevant -f is specified, +or --force is specified. + +=item --force + +Turns all problems into warnings. +See the -f option. + +Do not invoke git-debrebase --force in scripts and aliases; +instead, specify the particular -f for expected problems. + +=item --noop-ok + +Suppresses the error in +some situations where git-debrebase does nothing, +because there is nothing to do. + +The specific instances are discussed +in the text for the relvant operation. + +=item --anchor= + +Treats as an anchor, +regardless of what it's actually like. + +(It is a problem for +git-debrebase new-upstream operations +if is the previous anchor to be used, +because treating an arbitrary commit as an anchor +means forgoing upstream coherency checks.) + +=item -D + +Requests (more) debugging. May be repeated. + =back =head1 UNSTITCHING AND LAUNDERING