On Fri, 19 Feb 2021 at 00:56, Junio C Hamano <gitster@xxxxxxxxx> wrote: > [...] > Hmph, I was actually imagining the opposite---a context that does > not want to take -c/-C/-F would not want to take -m, either. > > Why is -m so special, and a lot more importantly, what would a user > want to achieve by using "-m more-text" combined with this > "--fixup=reword:<commit>" or "--fixup=amend:<commit>" feature? If we run without '-m' option like below: $ git commit --fixup=reword:<commit> Then it pops the editor with default "amend!" commit's message i.e: amend! subject of <commit> we are fixing. commit log message of <commit> we are fixing. (Here the end-user is free to edit the above message body of "amend!" commit ) On the other hand, if used with -m option like below: $ git commit --fixup=reword:<commit> -m "edited <commit> message" Then it will not pop the editor and the prepared "amend!" commit is : amend! subject of <commit> we are fixing. edited <commit> message. So, with the "-m" option users can do it with the command line only. And in both the cases upon `git rebase --autosquash` the commit log message of <commit> we are fixing, will automatically be replaced by the commit message body of "amend!" commit. Hope that explains the working and I also wonder if we can improve it to make it more user friendly ? Thanks and Regards, Charvi