git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH] rebase -i: only automatically amend commit if HEAD did not change

From
Avery Pennarun <apenwarr@gmail.com>
Date
Jul 22, 2008, 22:22 UTC
Message-ID
<32541b130807221522r2a43c49cl6400f00dbe7451a0@mail.gmail.com>
In-Reply-To
<alpine.DEB.1.00.0807222235520.8986@racer>
On 7/22/08, Johannes Schindelin <Johannes.Schindelin@gmx.de> wrote:
Show 6 quoted lines
>  If the user called "rebase -i", marked a commit as "edit", "rebase
>  --continue" would automatically amend the commit when there were
>  staged changes.
>
>  However, this is actively wrong when the current commit is not the
>  one marked with "edit".  So guard against this.

This patch is perhaps a symptom of something I've been meaning to ask about for a while.

Why doesn't "edit" just stage the commit and not auto-commit it at all? That way an amend would *never* be necessary, and rebase --continue would always do a commit -a (if there was anything left to commit). The special case fixed by this patch would thus not be needed.

It would also make it more obvious how to remove files from a commit, for example, without having to learn about "git reset". For that matter, you wouldn't have to learn about "git commit --amend" either, and it would save typing.

It would also be a little more consistent with "squash", which already lets you edit the commit message by default.

Just a thought. Presumably it was implemented the way it is for some reason, but I haven't seen any discussion about it.

Have fun,
Avery
Previous: Stephan BeyerNext: Junio C Hamano
Message 3 of 14 in “rebase -i: only automatically amend commit if HEAD did not change”
  1. rebase -i: only automatically amend commit if HEAD did not changeJohannes Schindelin, Jul 22, 2008
  2. Stephan BeyerJul 22, 2008
  3. Avery PennarunJul 22, 2008
  4. Junio C HamanoJul 22, 2008
  5. Avery PennarunJul 23, 2008
  6. Dmitry PotapovJul 23, 2008
  7. Avery PennarunJul 23, 2008
  8. Johannes SchindelinJul 23, 2008
  9. Avery PennarunJul 23, 2008
  10. Junio C HamanoJul 23, 2008
  11. Johannes SchindelinJul 24, 2008
  12. Stephan BeyerJul 24, 2008
  13. Junio C HamanoJul 25, 2008
  14. Johannes SchindelinJul 25, 2008

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.