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

Re: [PATCH] lockfile: add case insensitive filesystem note

From
Patrick Steinhardt <ps@pks.im>
Date
Sep 23, 2025, 07:56 UTC
Message-ID
<aNJSnUGzzMlmrDQw@pks.im>
In-Reply-To
<pull.2053.git.git.1758578084468.gitgitgadget@gmail.com>
On Mon, Sep 22, 2025 at 09:54:44PM +0000, Alan Da Costa via GitGitGadget wrote:
Show 10 quoted lines
> From: Alan Da Costa <alandacosta@gmail.com>
> When running git fetch or git pull on a case insensitive filesystem
> (e.g., default macOS), if multiple case variants of the same remote ref
> exist (often after a case-only rename), both variant locks map to the
> same on-disk path. When a local update is required, Git creates a lock
> for the first variant and then attempts to lock the second, which
> collides with the same lock file, so an “existing lock” error is
> reported. The underlying issue is mixed-case refs; resolve it by
> consolidating the remote to a single-case variant and update local refs
> accordingly.

Are you aware of Karthik's recent patch series at [1]? It looks like this addresses your exact problem in a more direct way, and the resulting error messages that we have in that patch series also give a bit more advice for how to handle the situation.

The patch series wasn't merged yet, but will probably be merged soon. Could you maybe test that series and say whether it addresses your need?

Thanks!
Patrick
[1]: https://lore.kernel.org/git/20250902-587-git-fetch-1-fails-fetches-on-case-insensitive-repositories-v1-0-35e69bbb507d@gmail.com/
Previous: Junio C HamanoNext: Karthik Nayak
Message 3 of 4 in “lockfile: add case insensitive filesystem note”
  1. lockfile: add case insensitive filesystem noteAlan Da Costa via GitGitGadget, Sep 22, 2025
  2. Junio C HamanoSep 22, 2025
  3. Patrick SteinhardtSep 23, 2025
  4. Karthik NayakSep 23, 2025

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.