[git-users] Enhancement: default core.ignorecase to false for all OS's

2015-09-09 Thread Andrew Pennebaker
Currently, ignorecase's default setting varies by OS (filesystem), which 
allows Mac and Windows users to be lazy about the casing of filename 
arguments. However, this creates problems for projects with contributors 
from multiple OS's/filesystems. The ignorecase setting can have surprising 
consequences. For example, Mac OS X users with HFS may experience git 
checkout not actually checking out the specified filename, in a poorly 
designed project with both test.py and Test.py. Likewise, git rm may remove 
the wrong file.

In future versions of git, could we default core.ignorecase to false, for 
all OS's? This would provide more intuitive git behavior overall, while 
still allowing users to enable the setting if they wish.

-- 
You received this message because you are subscribed to the Google Groups "Git 
for human beings" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to git-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [git-users] Enhancement: default core.ignorecase to false for all OS's

2015-09-09 Thread Philip Oakley
- Original Message - 
  From: Andrew Pennebaker 
  To: Git for human beings 
  Sent: Wednesday, September 09, 2015 4:46 PM
  Subject: [git-users] Enhancement: default core.ignorecase to false for all 
OS's


  Currently, ignorecase's default setting varies by OS (filesystem), which 
allows Mac and Windows users to be lazy about the casing of filename arguments. 
However, this creates problems for projects with contributors from multiple 
OS's/filesystems. The ignorecase setting can have surprising consequences. For 
example, Mac OS X users with HFS may experience git checkout not actually 
checking out the specified filename, in a poorly designed project with both 
test.py and Test.py. Likewise, git rm may remove the wrong file.

  In future versions of git, could we default core.ignorecase to false, for all 
OS's? This would provide more intuitive git behavior overall, while still 
allowing users to enable the setting if they wish.


  -- 
That's probably not a good idea. Though there are different Git versions for 
the different OS's anyway, e.g. G4W.

If you are in a mixed OS situation then allowing BOTH test.py and Test.py files 
in the repository would not be acceptable. They could not be checked out in any 
insensitive system which would see them as being the same files, rather than 
different files.

However if it's one or the other, but not both (XOR) in the repo, then it it's 
quite reasonable to allow (cope with) such a mixed case - but ignorecase would 
be typically needed for those OS's. 

At least the main git.git (as used for Linux) has the ignorecase false as 
default.

It's one of those 'No Right Answer(tm)' wicked issues

--
Philip
http://www.leanessays.com/2002/01/wicked-problems.html
https://en.wikipedia.org/wiki/Wicked_problem

-- 
You received this message because you are subscribed to the Google Groups "Git 
for human beings" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to git-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.