On 10/06/2011 08:22 PM, Brandon Casey wrote: > The last set of tests is performed only on a case-insensitive filesystem. > Those tests make sure that git handles the case where the .gitignore file > resides in a subdirectory and the user supplies a path that does not match > the case in the filesystem. In that case^H^H^H^Hsituation, part of the > path supplied by the user is effectively interpreted case-insensitively, > and part of it is dependent on the setting of core.ignorecase. git should > only match the portion of the path below the directory holding the > .gitignore file according to the setting of core.ignorecase. Isn't this a rather perverse scenario? It is hard to imagine that anybody *wants* part of a single filename to be matched case-insensitively and another part to be matched case-sensitively. ISTM that a person who is using a case-insensitive filesystem and has core-ignorecase=false is (1) a glutton for punishment and (2) probably very careful to make sure that the case of all pathnames is correct. So such a person is not likely to benefit from this schizophrenic behavior. > [...] If git instead built the attr > stack by scanning the repository, then the paths in the origin field would > not necessarily match the paths supplied by the user. If someone makes a > change like that in the future, these tests will notice. Your decision to treat path names as partly case-insensitive will make this kind of improvement considerably more complicated. Therefore, weighing the negligible benefit of declaring this schizophrenic behavior against the potential big pain of remaining backwards-compatible with this behavior, I suggest that we either (1) declare that when core.ignorecase=false then the *whole* filenames (including the path leading up to the .gitignore file) must match case-sensitively, or (2) declare the behavior in this situation to be undefined so that nobody thinks they should depend on it. But given that I'm a potential implementer but not a potential Windows user, perhaps my judgment is biased... Michael -- Michael Haggerty mhagger@xxxxxxxxxxxx http://softwareswirl.blogspot.com/ -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html