Re: Bug: git pull output and case sensitivity.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Mar 20, 2023 at 06:01:30PM +0000, dooagain wrote:
> I'm not sure if this is helpful, but I documented a simple way to recreate the issue I am seeing in the README in the https://github.com/spencerdcarlson/test-casing repository.

It is helpful,  thanks.
In general, we prefer to have all informartion in emails ;-)
Anyway.

To reply on Peff's comment:

>So I think this is just a known gotcha, and the path forward is probably
>a new ref storage format that doesn't rely on storing names directly in
>the filesystem (reftable, or some system based on packed-ref slices).

Yes, it is.
The thing is, that Git at the moment is unable to handle to branches
like Foo and foo on case-insensitive file systems.
Because branch names are stored as files, and that doesn't typially work
well under Windows or MacOs.

As a workaround,
git pack-refs
can be used.

side-note 1: a better backend for refs may make it's way into Git
in the long term.

side-note 2:
I always recommend to stick to a naming convention when working in
a cross-platform project.
You can keep filenames only lowercase.
That is debatable, some people prefer camel-case rather then snake-case.
So go for either way.
But the same restriction/recommendation is valid for branch names as well,
stick to one convention and avoid possible collisions under Mac or Windows.

Or run `git pack-refs`, but be aware the the performance may suffer,
if you use zillions of refs.

HTH
/Torsten

>
> ------- Original Message -------
> On Monday, March 20th, 2023 at 11:16 AM, Jeff King <peff@xxxxxxxx> wrote:
>
>
> > On Sun, Mar 19, 2023 at 07:22:40AM +0100, Torsten Bögershausen wrote:
> >
> > > On Sat, Mar 18, 2023 at 07:21:10PM +0000, dooagain wrote:
> > >
> > > > Thank you for filling out a Git bug report!
> > > > Please answer the following questions to help us understand your issue.
> > > >
> > > > What did you do before the bug happened? (Steps to reproduce your issue)
> > > >
> > > > I configured my git repository to ignore case by executing `git config core.ignorecase true` then I executed `git pull` multiple times.
> > >
> > > What do you mean by "I configured my git repository" ?
> > > The answer is already there, so let's re-rephrase it:
> > > Are you working on a case-insensitive file system ?
> > >
> > > What happens if you create a test directory, like this:
> > > mkdir test-case
> > > cd test-case
> > > git init
> > > git config --get core.ignorecase
> >
> >
> > I think this is kind of a red herring, isn't it? The bug report is about
> > refs, and I don't think those really respect core.ignorecase either way,
> > and inconsistencies are known to happen on case-insensitive filesystems
> > (because the refs are sometimes case-sensitive and sometimes not
> > depending on whether they are packed or loose in the filesystem).
> >
> > So I think this is just a known gotcha, and the path forward is probably
> > a new ref storage format that doesn't rely on storing names directly in
> > the filesystem (reftable, or some system based on packed-ref slices).
> >
> > -Peff




[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux