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

Re: Branch Name Case Sensitivity

From
Karsten Blees <karsten.blees@gmail.com>
Date
Feb 28, 2014, 13:56 UTC
Message-ID
<5310959D.709@gmail.com>
In-Reply-To
<53102FB0.6040603@viscovery.net>
Am 28.02.2014 07:41, schrieb Johannes Sixt:
Show 7 quoted lines
> Am 2/28/2014 0:38, schrieb Lee Hopkins:
>>> If I understand the issue correctly, the problem is that packed-refs
>>> are always case-sensitive, even if core.ignorecase=true. OTOH,
> 
> core.ignorecase is intended to affect filenames of the worktree, not
> anything else, BTW.
> 

from git-config(1): "enables various workarounds to enable git to work better on filesystems that are not case sensitive"

It says nothing about work-tree only, so I'd expect it to apply to all git components that store potentially case-sensitive information in file names.
...it also says "better", not "flawlessly" :-)
Show 16 quoted lines
>>> checking / updating _unpacked_ refs on a case-insensitive file system
>>> is naturally case-insensitive. So wouldn't it be a better workaround
>>> to disallow packed refs (i.e. 'git config gc.packrefs false')?
>>
>> You are correct, the issue boils down to mixing the usage of 
>> packed-refs and loose refs on case insensitive file systems. So either 
>> always using packed-refs or always using loose refs would take care of 
>> the problem. Based Michael Haggerty's response, it seems that always 
>> using loose refs would be a better workaround.
> 
> So, everybody on a case-insensitive file system should pay the price even
> if they do not need the "feature"? No way.
> 
> If you are on a case-insensitive filesystem, or work on a cross-platform
> project, ensure that you avoid ambiguous refs. Problem solved.
> 
So its OK to lose data if you accidentally use an ambiguous ref? I cannot believe you actually meant that.
IMO the proper solution is to teach packed-refs about core.ignorecase. Until that happens, disabling gc.packrefs seems to be a valid workaround for people who have that problem.
Previous: Johannes SixtNext: Lee Hopkins
Message 9 of 27 in “Branch Name Case Sensitivity”
  1. Lee HopkinsFeb 26, 2014
  2. Junio C HamanoFeb 27, 2014
  3. Torsten BögershausenFeb 27, 2014
  4. Lee HopkinsFeb 27, 2014
  5. Michael HaggertyFeb 27, 2014
  6. Karsten BleesFeb 27, 2014
  7. Lee HopkinsFeb 27, 2014
  8. Johannes SixtFeb 28, 2014
  9. Karsten BleesFeb 28, 2014
  10. Lee HopkinsFeb 28, 2014
  11. Junio C HamanoFeb 28, 2014
  12. Duy NguyenFeb 28, 2014
  13. Junio C HamanoFeb 28, 2014
  14. Lee HopkinsMar 1, 2014
  15. Torsten BögershausenMar 1, 2014
  16. Lee HopkinsMar 1, 2014
  17. Karsten BleesMar 3, 2014
  18. Lee HopkinsMar 3, 2014
  19. Junio C HamanoMar 3, 2014
  20. Karsten BleesMar 4, 2014
  21. Torsten BögershausenMar 4, 2014
  22. Lee HopkinsMar 5, 2014
  23. Michael HaggertyFeb 28, 2014
  24. Duy NguyenFeb 28, 2014
  25. Michael HaggertyFeb 28, 2014
  26. Stephen LeakeFeb 28, 2014
  27. Michael HaggertyFeb 28, 2014

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.