Re: Bug with fixup and autosquash
- From
Johannes Schindelin <johannes.schindelin@gmx.de>
- Date
- Feb 10, 2017, 14:02 UTC
- Message-ID
- <alpine.DEB.2.20.1702101459200.3496@virtualbox>
- In-Reply-To
- <454E7D934160418EB4C4871ED209CBCA@PhilipOakley>
Hi Philip,
On Thu, 9 Feb 2017, Philip Oakley wrote:
Show 10 quoted lines
> From: "Johannes Schindelin" <Johannes.Schindelin@gmx.de> > Sent: Thursday, February 09, 2017 8:55 PM > > > The rebase--helper code (specifically, the patch moving autosquash > > logic into it: https://github.com/dscho/git/commit/7d0831637f) tries > > to match exact onelines first, > > While I think this is an improvement, and will strongly support the `git > commit --fixup=<commit>` option which will, if the sha1/oid is given, > create the exact commit subject line.
That is already the case (with the exception that it is not the "exact commit subject line" but the oneline, i.e. unwrapped first paragraph).
Show 6 quoted lines
> However it would also be useful if the actual commit subject line could > have a similar format option, so that those who use say the git gui > (rather than the cli) for the commit message, could easily create the > `!fixup <commit>` message which would allow a broader range of ways of > spelling the commit (e.g. giving a sha1(min length) that is within the > rebase todo list).
It is already the case that `fixup! <sha1>` is accepted, see the code replaced by above-mentioned commit:
https://github.com/dscho/git/commit/7d0831637f#diff-0f15aff45d5dd346465c35597a5f274eL780
... and its replacement code in C:
https://github.com/dscho/git/commit/7d0831637f#diff-79231f0693f84f3951daeea17065aad9R2800
Note that both preimage and postimage code try to match onelines first, with the new code changing behavior ever so slightly: it tries to match the exact oneline first, then a commit SHA-1 of an already-seen `pick` line, and only then falls back to the (expensive) prefix match.
Ciao, Dscho