X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=dgit.git;a=blobdiff_plain;f=NOTES.git-debrebase;h=95ad453e0c271d9aaa2a767df3e5be02060df02b;hp=635f72bbbc5ddde5a431e0d8720f9496ac447f5c;hb=16bb4f404fe0c9816719adce36b15daaac5dc451;hpb=1f4480c7fe42d8e997db608c35a3500de1052528 diff --git a/NOTES.git-debrebase b/NOTES.git-debrebase index 635f72bb..95ad453e 100644 --- a/NOTES.git-debrebase +++ b/NOTES.git-debrebase @@ -47,6 +47,18 @@ overall format m{^\[git-debrebase (?:\w*-)?upstream combine \.((?: $extra_orig_namepart_re)+)\]} +Every breakwater commit must be a merge. In principle, this is not +necessary. After all, we are relying on the + [git-debrebase breakwater: ...] +commit message annotation in "declare" breakwater merges (which +do not have any upstream changes), to distinguish those breakwater +merges from ordinary pseudomerges (which we might just try to strip). + +However, the user is going to be doing git-rebase a lot. We really +don't want them to rewrite a breakwater base commit. git-rebase +trips up on merges, so that is a useful safety catch. + + ========= workflow