Re: Unexpected ignorecase=false behavior on Windows
- From
Johannes Sixt <j6t@kdbg.org>
- Date
- Jun 22, 2018, 17:36 UTC
- Message-ID
- <1c7e338e-157b-fd2f-5eb1-01373f627acd@kdbg.org>
- In-Reply-To
- <c5abdd45-a919-96f6-8560-5fd943069f5e@syntevo.com>
Am 22.06.2018 um 14:04 schrieb Marc Strapetz:
Show 8 quoted lines
> On Windows, when creating following repository: > > $ git init > $ echo "1" > file.txt > $ git add . > $ git commit -m "initial import" > $ ren file.txt File.txt > $ git config core.ignorecase false
This is a user error. core.ignorecase is *not* an instruction as in "hey, Git, do not ignore the case of file names". It is better regarded as an internal value, with which Git remembers how it should treat the names of files that it receives when it traverses the directories on the disk.
Git could probe the file system capabilities each time it runs. But that would be wasteful. Hence, this probe happens only once when the repository is initialized, and the result is recorded in this configuration value. You should not change it.
Show 15 quoted lines
> Status results are: > > $ git status --porcelain > ?? File.txt > > As on Unix, I would expect to see: > > $ git status --porcelain > D file.txt > ?? File.txt > > Is the Windows behavior intended? I'm asking, because e.g. JGit will > report missing files, too, and I'm wondering what would be the correct > way to resolve this discrepancy? (JGit does not have > "ignorecase=true"-support at all, btw).
Then I don't think there is a way to remove the discrepancy.
-- Hannes