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

Re: git branch --editdescription fatal error

From
Ralf Thielow <ralf.thielow@gmail.com>
Date
Jan 6, 2017, 19:31 UTC
Message-ID
<CAN0XMO+zzYOXF2gwr=0Tu-7T5BH7f_L+FhfD8RUenDeq3xFHjA@mail.gmail.com>
In-Reply-To
<CAGZ79kaz_hS9P7vqV9EhZazM_g0OUdRfMtFPJ7gFu-h-ku=NKw@mail.gmail.com>
2017-01-06 18:55 GMT+01:00 Stefan Beller <sbeller@google.com>:
Show 9 quoted lines
> On Fri, Jan 6, 2017 at 9:25 AM, Jake Lambert <jake@onahill.co> wrote:
>> Hello,
>>
>> When executing "git branch <branch> --edit-description" on a branch with no description set, I get "fatal: could not unset 'branch.<branch>.description". It would seem that the unsetting piece should occur only after checking if it was set in the first place.
>
> That seems strange. Is it possible that your config is not writable?
> (.git/config, ~/gitconfig, you'd need to find out where the <branch>
> is configured already via git config --global/--system/--local --list)
>

Have you actually tried to reproduce this issue? I'm on current next and can reproduce the problem.

It seems Git is not happy with unsetting non-existent configs. And at least the following piece of code seems to be there since 10bea152a (Add functions git_config_set() and git_config_set_multivar(), 2005-11-17).

config.c:2212 /* if nothing to unset, or too many matches, error out */ if ((store.seen == 0 && value == NULL) ||

I wonder why it's an error to remove something that doesn't exist except the case we 'know' it exists because of further actions. I don't think this is a thing, though. Just for the record: `git config --unset branch.$branch.description` does return with code "5" here as well.

I think removing things that don't exist should behave the same like removing things that do exist, with a success.

Ralf
Previous: Stefan BellerNext: Stefan Beller
Message 3 of 6 in “git branch --editdescription fatal error”
  1. Jake LambertJan 6, 2017
  2. Stefan BellerJan 6, 2017
  3. Ralf ThielowJan 6, 2017
  4. Stefan BellerJan 6, 2017
  5. Ralf ThielowJan 6, 2017
  6. Jeff KingJan 6, 2017

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.