Denton Liu <liu.denton@xxxxxxxxx> writes: > Fix a bug where the scissors line is placed after the Conflicts: > section, in the case where a merge conflict occurs and > commit.cleanup = scissors. > > Note that the removal of the if-else tower in git_sequencer_config may > appear to be a no-op refactor but it actually isn't. First of all, we > now accept "default". More importantly, though, if > commit.cleanup = scissors, the cleanup enum will be set to > COMMIT_MSG_CLEANUP_SCISSORS instead of COMMIT_MSG_CLEANUP_SPACE when we > are reverting or cherry-picking. This allows us to append scissors to > MERGE_MSG in the case of a conflict. Good thing to point out in the log message. > diff --git a/Documentation/git-cherry-pick.txt b/Documentation/git-cherry-pick.txt > index d35d771fc8..5c086d78c8 100644 > diff --git a/Documentation/git-revert.txt b/Documentation/git-revert.txt > index 837707a8fd..1894010e60 100644 > --- a/Documentation/git-revert.txt > +++ b/Documentation/git-revert.txt > @@ -66,6 +66,13 @@ more details. > With this option, 'git revert' will not start the commit > message editor. > > +--cleanup=<mode>:: > + This option determines how the commit message will be cleaned up before > + being passed on. See linkgit:git-commit[1] for more details. In > + addition, if the '<mode>' is given a value of `scissors`, scissors will > + be prepended to MERGE_MSG before being passed on in the case of a > + conflict. These both say "prepended", but shouldn't the code - add the merge message proper, with the expectation that it would be used more or less intact in the final commit message; then - add the scissors; then - append informative cruft that would be removed, only to help human users. in this order? I'd expect that most people would consider that the primary payload of MERGE_MSG file is the part that would become the commit message, so I would have expected the second step would be described as "appended to". Another thing I notice is that this singles out "scissors" mode; doesn't the code do anything worth describing with other clean-up modes? > + sed "s/[a-f0-9]\{40\}/objid/" .git/MERGE_MSG >actual && Use $_x40 (or $OID_REGEX) to make it more readable and also future-proof?