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

Re: Recovering from commit --amend in rebase --interactive

From
Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Date
Jun 1, 2010, 15:25 UTC
Message-ID
<AANLkTinNpIjirZQL1lBi3t4i6_utCIUMuXc8q2gSJvmO@mail.gmail.com>
In-Reply-To
<20100601115755.04ff4a0d@jk.gs>
On Tue, Jun 1, 2010 at 09:57, Jan Krüger <jk@jk.gs> wrote:
Show 18 quoted lines
> Peter Krefting <peter@softwolves.pp.se> wrote:
>
>> Last time this happened to me, I *did* notice my mistake as I entered
>> the editor, since it came up with the previous commit's message.
>> However, as the commit message file was in a good shape, I found no
>> way to break out of the amend.
>
> It might be easy to miss, but it's there, right in the editor:
>
> # Please enter the commit message for your changes. Lines starting
> # with '#' will be ignored, and *an empty message aborts the commit*.
> (Emphasis added)
>
> In general, it might be helpful to warn very loudly upon doing a commit
> --amend after fixing conflicts, but an implementation would probably be
> ugly and for all I know, there might be people who frequently cause
> conflicts while amending; those guys would probably be quite annoyed at
> such a warning.

I've also introduced the error Peter describes into my history because I wasn't careful. That required some splitting / reflog fixes later.

Perhaps the best way to solve this would be to change the content of COMMIT_EDITMSG in cases like these so it gives you an explicit warning about what you're about to do.

We already do this for merges, from builtin/commit.c:
		if (in_merge)
			fprintf(fp,
				"#\n"
				"# It looks like you may be committing a MERGE.\n"
				"# If this is not correct, please remove the file\n"
				"#	%s\n"
				"# and try again.\n"
				"#\n",
				git_path("MERGE_HEAD"));
		fprintf(fp,
			"\n"
			"# Please enter the commit message for your changes.");
Previous: Jan KrügerNext: Junio C Hamano
Message 5 of 8 in “Recovering from commit --amend in rebase --interactive”
  1. Peter KreftingJun 1, 2010
  2. Boaz HarroshJun 1, 2010
  3. Peter KreftingJun 1, 2010
  4. Jan KrügerJun 1, 2010
  5. Ævar Arnfjörð BjarmasonJun 1, 2010
  6. Junio C HamanoJun 2, 2010
  7. Ævar Arnfjörð BjarmasonJun 3, 2010
  8. Gabriel FilionJun 1, 2010

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.