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

Re: Git doesn't save capitalization change in file names.

From
Torsten Bögershausen <tboegi@web.de>
Date
Jan 12, 2016, 09:58 UTC
Message-ID
<5694CE38.5020503@web.de>
In-Reply-To
<alpine.DEB.2.20.1601120900380.2964@virtualbox>
On 01/12/2016 09:02 AM, Johannes Schindelin wrote:
Show 28 quoted lines
> Hi,
>
> On Tue, 12 Jan 2016, Andrew Ardill wrote:
>
>> On 12 January 2016 at 13:06, Daniil S <ds98s3a@gmail.com> wrote:
>>> So I've now encountered this with both GitHub and BitBucket, Windows
>>> and Linux versions, so I'm fairly sure it's git's fault.
> I highly doubt that the Linux variety of Git displays this problem, unless
> it is run on a case-insensitive file system.
>
>>> Example: if file named "Pathfinding.java" was renamed to
>>> "PathFinding.java" and that change is then committed, filename won't
>>> change in repository.
>> This actually comes down to the file system you use, as git itself does
>> keep track of the capitalisation of file names; if the file system is
>> case insensitive (Mac OSX being the typical example) then you can run
>> into weird issues when files change case.
>>
>> For example, the following two search results:
>>
>> https://stackoverflow.com/questions/10523849/changing-capitalization-of-filenames-in-git
>>
>> https://ocroquette.wordpress.com/2014/07/08/git-capitalization-of-file-names-and-name-conflicts/
> I'd like to offer the most common work-around:
>
> git mv Pathfinding.java Pathfinding.java.rename
> git mv Pathfinding.java.rename PathFinding.java
>

Side note: That should no longer be needed: new versions of Git can handle the rename these days.

However, when A) does the rename, pushes it to a central repo, B) pulls the changes, the file will stay un-renamed on the local disk. You can delete all worktree files, and do a reset --hard, (at your own risk)

Previous: Johannes Schindelin
Message 4 of 4 in “Git doesn't save capitalization change in file names.”
  1. Daniil SJan 12, 2016
  2. Andrew ArdillJan 12, 2016
  3. Johannes SchindelinJan 12, 2016
  4. Torsten BögershausenJan 12, 2016

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.