Re: [PATCH RFC v2 2/2] builtin/history: abort reword on same message
- From
Justin Tobler <jltobler@gmail.com>
- Date
- Jun 9, 2026, 20:14 UTC
- Message-ID
- <aihwS9aQ1b_8q_5u@denethor>
- In-Reply-To
- <xmqq5x3r1ph0.fsf@gitster.g>
On 26/06/09 12:30PM, Junio C Hamano wrote:
Show 32 quoted lines
> Justin Tobler <jltobler@gmail.com> writes: > > > I can see a situation where a user performs: > > > > git history reword abcd1234 > > > > with the intention to modify a commit message, but then for some reason > > changes their mind and doesn't want history to change. Maybe the wrong > > commit was referenced, or they decide the current message is actually > > fine. From my understanding, there isn't a great way to abort rewording > > a commit during editing and thus the user would have to reset history > > afterwards if they care enough to go back to the previous point. > > > > So I do see some value in a mechanism to abort rewriting a commit > > message. > > I think we are saying the same thing in different ways. I want to > see that command "succeed" either case (normally we create a new > commit object because we record an updated committer timestamp, but > if there is no need to create a new commit object only to record an > updated committer timestamp, we may choose not to and leave the > history intact) and I do not want it to *abort*. > > The mechanism to do so may be exactly the same, i.e., accept an > updated log message, then try to "hash-object" (without -w) the > commit object with everything, except for the updated commit log > message, taken from the original commit, plus the updated log > message. And if the resulting hash is the same as the original, do > not do anything further and return happily. Aborting sounds more > like complaining loudly "baa, you asked me to reword but you gave me > the same message? is anything wrong with you?" with non-zero exit > status, which I think the user does not deserve in such a case.
Yes, I completely agree. If the user doesn't update the commit message, for whatever reason, that should still be considered a success since it follows the user's intent. I don't think it makes sense to exit with a non-zero code in such cases. I would also question if we should print any message/note to the user at all for the same reasons.
-Justin