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

Re: Problem with rerere forget

From
Junio C Hamano <gitster@pobox.com>
Date
May 14, 2015, 19:19 UTC
Message-ID
<xmqqr3qjj7b6.fsf@gitster.dls.corp.google.com>
In-Reply-To
<20150514191637.GA9329@peff.net>
Jeff King <peff@peff.net> writes:
Show 23 quoted lines
> On Thu, May 14, 2015 at 11:49:12AM -0700, Junio C Hamano wrote:
>
>> Alex Coppens <alex@nativetouch.com> writes:
>> 
>> > git rerere forget path_to_file/file.js
>> >
>> > fatal: BUG: attempt to commit unlocked object
>> 
>> That comes from commit_lock_file(); I think rerere.c:write_rr()
>> has a call to that function and I suspect that is the call that is
>> giving the above message.
>> 
>> Is there any other process that is mucking with your .git/index file
>> while you are running the command?
>
> This seems much easier to reproduce:
>
>   $ git init -q
>   $ git rerere forget foo
>   fatal: BUG: attempt to commit unlocked object
>
> It looks like we need to pay more attention to the return value of
> setup_rerere, which is what is supposed to take the lock.

Good spotting. The normal rerere does check, but rerere-forget codepath seems to forget it.

Previous: Jeff KingNext: Jeff King
Message 7 of 13 in “Problem with rerere forget”
  1. Alex CoppensMay 14, 2015
  2. Stefan BellerMay 14, 2015
  3. Alex CoppensMay 14, 2015
  4. Stefan BellerMay 14, 2015
  5. Junio C HamanoMay 14, 2015
  6. Jeff KingMay 14, 2015
  7. Junio C HamanoMay 14, 2015
  8. rerere: exit silently on "forget" when rerere is disabledJeff King, May 14, 2015
  9. Junio C HamanoMay 14, 2015
  10. Jeff KingMay 14, 2015
  11. Alex CoppensMay 14, 2015
  12. Jeff KingMay 14, 2015
  13. Alex CoppensMay 14, 2015

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.