All of lore.kernel.org
 help / color / mirror / Atom feed
From: Patrick Steinhardt <ps@pks.im>
To: Junio C Hamano <gitster@pobox.com>
Cc: Jeff King <peff@peff.net>, Joe Drew <joe.drew@indexexchange.com>,
	"git@vger.kernel.org" <git@vger.kernel.org>,
	Karthik Nayak <karthik.188@gmail.com>
Subject: Re: "lock file exists" when fetching in bare clone of repository
Date: Fri, 22 Aug 2025 08:13:44 +0200	[thread overview]
Message-ID: <aKgKmLvaHAuueJeb@pks.im> (raw)
In-Reply-To: <xmqqwm6w3bjp.fsf@gitster.g>

On Thu, Aug 21, 2025 at 09:05:30AM -0700, Junio C Hamano wrote:
> Patrick Steinhardt <ps@pks.im> writes:
> 
> >     You're on a case-insensitive filesystem, and the remote you are
> >     trying to fetch from has references that only differ in casing. It
> >     is impossible to store such references with the "files" backend. You
> 
> "backend." -> "backend on your system."
> 
> >     can either accept this as-is, in which case you won't be able to
> >     store all remote references on disk. Or you can alternatively
> 
> I do not see the former as a viable choice, though.  When this
> happens, the clone or fetch fails and the user cannot catch up to
> the upstream development, no?  You have to futz with the fetch
> refspec to cause refs your filesystem cannot store ignored in order
> to make progress on other refs, but that is making the user do more
> than accepting this as-is.

Oh, yes, right now it's too involved. What I'm proposing is to mark the
transaction as allowed-to-fail, and in that case we'd be able to fetch
and store refs in this case again. The result would still be broken, but
it would be broken in a similar way as before. There's one difference
though: we'd accept the _first_ conflicting ref now, whereas before we
accepted the _last_ conflicting ref.

In any case, I very much feel like we should know to warn about this
case and guide readers towards a proper solution.

Patrick

  reply	other threads:[~2025-08-22  6:13 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-08-20 20:54 "lock file exists" when fetching in bare clone of repository Joe Drew
2025-08-20 21:33 ` Jeff King
2025-08-21  7:15   ` Patrick Steinhardt
2025-08-21  7:27     ` Jeff King
2025-08-21 10:09       ` Patrick Steinhardt
2025-08-21 16:05         ` Junio C Hamano
2025-08-22  6:13           ` Patrick Steinhardt [this message]
2025-08-22  8:01             ` Karthik Nayak
2025-08-22 17:47               ` Junio C Hamano
2025-08-28 13:51                 ` Karthik Nayak
2025-08-28 16:16                   ` Junio C Hamano
2025-09-01 18:17                     ` Karthik Nayak
2025-08-21 15:47       ` Junio C Hamano
2025-08-22 13:28   ` Joe Drew
2025-08-26 11:19   ` Jeff King
2025-09-02 10:55     ` Patrick Steinhardt

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=aKgKmLvaHAuueJeb@pks.im \
    --to=ps@pks.im \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=joe.drew@indexexchange.com \
    --cc=karthik.188@gmail.com \
    --cc=peff@peff.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.