Re: User report on git 2.55.0
- From
Ramkumar Ramachandra <r@artagnon.com>
- Date
- Sep 4, 2026, 20:32 UTC
- Message-ID
- <5ae09f8a-4acd-4c70-9088-3322195ed08c@app.fastmail.com>
- In-Reply-To
- <apsaaQrngwYIVeVM@fruit.crustytoothpaste.net>
brian m. carlson wrote:
Show 17 quoted lines
> On 2026-09-04 at 18:05:43, Ramkumar Ramachandra wrote: >> Hi, >> >> I recently bumped to the latest version of git on macOS via homebrew, and here's what I've noticed: >> >> 1. git-replay now updates the ref, simplifying my git-reply-checkout script. Someone on this list recommended it to me in response to an issue I had a long time ago, and I think I can safely say that git-replay is an invaluable tool. Thanks! >> 2. git-pull often fails with a dangling remote ref error, and fails to update the current branch (main, in my case): the workaround is to reset-hard to origin/main. I'm not sure if this is a GitHub issue, or a bug in core git: I've never encountered this behavior on older versions of git, with the exception of submodules. >> 3. git-diff sometimes exits with 0 code without printing a diff, even though the worktree is dirty: the workaround is to run it again. I've never encountered this behavior on older versions of git, and I think it might be a subtle race in core git. >> 4. `git checkout -` sometimes fails with an invalid ref error after a pull, where the previous branch is a local branch. I don't know if this is due to a background git-gc with some behavior change, but I never encountered this behavior on older versions without an operation that would cause this. >> >> Before digging further to find the root cause, I'd like to know if there is some explanation I'm missing, or if these are known issues? > > I haven't heard of any of these things and I usually follow bug reports > to the list fairly closely. I also use Homebrew's Git on my work Mac > using macOS 26 and haven't run into any of these things, either. I feel > like my colleagues would have mentioned this, too, and I haven't heard > about any such thing anywhere, including in our Git users channel.
Hm, perhaps what's somewhat unique in my case is the scale repository? I only observe this on llvm/llvm-project.git on GitHub, which gets 200+ updates over a 24-hour window, and measures 30mn+ lines of code. Also, as a former contributor to git, I have the habit of concurrently running git commands or terminating them early when my muscle memory tells me that it's safe: it's hard to pinpoint what exactly, but I don't think git will ever leave the repository in a broken state (I know to clean up state markers by hand).
> Do you maybe have some sort of security software running on your Mac?
I think it's clean, but it's still a possibility that the workplace installed something recently: I don't see any other strange symptoms with any other software though, and everything seems to working reliably? Perhaps the most common task: I run llvm tests over 30 times a day on different changes, and it never reports any spurious failures? I will nevertheless ask the IT team at my workplace if something that I can't see was installed. I don't use my personal laptop for llvm work, so doing that comparison is not possible.
> That seems like a thing that could cause items 2–4. Also, are you > having any sort of other disk, hardware, or other problems where files > sometimes go missing or don't have the expected content?
I suspected that as well, but doesn't seem to be the case: the laptop is less than a year old, and I haven't observed even a hint of hardware problems?
> Are you using files or reftable as the ref backend for your repositories > (or a combination of both)? If you're using the files backend, does > switch to reftable (`git refs migrate --ref-format=reftable`) fix the > problem or change the behaviour?
Thanks for the tip! I was using loose refs, but just migrated to reftables: will report back in a couple of weeks or so either way.
p.s. There was a small error in my previous email. The update to git-replay I mentioned as the first item happened one or two versions ago: I remember updating my git-replay-checkout script around February or so, while 2.55.0 was released just over a month ago.
Warm regards, Ram