{"thread":{"id":"26232","subject":"Why don't git-init and git-clone probe for core.ignorecase on Windows > XP?","startedAt":"2011-01-07T18:34:35Z","lastAt":"2011-01-24T21:15:30Z","messageCount":3,"participants":["Dun Peal","Junio C Hamano"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"159128","messageId":"AANLkTimqgCsmC96fkWQJ0yB+FuyC6Xkgn3UAfZrqMqK_@mail.gmail.com","threadId":"26232","inReplyTo":null,"subject":"Why don't git-init and git-clone probe for core.ignorecase on Windows > XP?","fromName":"Dun Peal","fromEmail":"dunpealer@gmail.com","sentAt":"2011-01-07T18:34:35Z","receivedAt":"2011-01-07T18:34:35Z","isPatch":false,"sender":{"key":"dunpealer@gmail.com","avatar":"https://gravatar.com/avatar/42f3e6a1166eb44e33f24c20ccbe809fa8591413f366dfe3755c8a8d4935ace9?d=mp&s=160"},"body":"Hello.\n\nThe git-config manpage says about core.ignorecase:\n\n\"The default is false, except git-clone(1) or git-init(1) will probe\nand set core.ignorecase true if appropriate when the repository is\ncreated.\"\n\nI assume this is happening when you clone or init on FAT, which is\nexplicitly mentioned earlier in that section. But apparently it\ndoesn't happen for either XP, Vista or 7. While those newer releases\nuse NTFS, which technically supports case-sensitivity, the operating\nitself still apparently doesn't, so it would seem like git-clone and\ngit-init should probe regarding the core.ignorecase on any version of\nWindows, no?\n\nThanks, D\n"},{"id":"159149","messageId":"7voc7s5uy3.fsf@alter.siamese.dyndns.org","threadId":"26232","inReplyTo":"AANLkTimqgCsmC96fkWQJ0yB+FuyC6Xkgn3UAfZrqMqK_@mail.gmail.com","subject":"Re: Why don't git-init and git-clone probe for core.ignorecase on Windows > XP?","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2011-01-07T20:18:28Z","receivedAt":"2011-01-07T20:18:28Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Dun Peal <dunpealer@gmail.com> writes:\n\n> The git-config manpage says about core.ignorecase:\n>\n> \"The default is false, except git-clone(1) or git-init(1) will probe\n> and set core.ignorecase true if appropriate when the repository is\n> created.\"\n>\n> I assume this is happening when you clone or init on FAT, which is\n> explicitly mentioned earlier in that section. But apparently it\n> doesn't happen for either XP, Vista or 7. While those newer releases\n> use NTFS, which technically supports case-sensitivity, the operating\n> itself still apparently doesn't, so it would seem like git-clone and\n> git-init should probe regarding the core.ignorecase on any version of\n> Windows, no?\n\nSorry, but it is unclear if you are complaining that core.ignorecase is\nset (but you believe it shouldn't be) or it is not set (but you believe it\nshould be) on NTFS from the description.\n\nAs far as I can tell from the code (I obviously only look at the plain\nvanilla git, and msysgit might have some patch to this part, I dunno.  Oh\nby the way you didn't say which version you are complaining about,\neither), we do the probing on all systems (including POSIX folks with FAT\nfilesystem mounted) by first creating .git/config and then checking if a\nfile .git/CoNfIg which we know we never created can be accessed.  If we\ncan, that means the filesystem ignores case, iow, we cannot have two files\nconfig and CoNfIg at the same time, and set core.ignorecase to true.\n"},{"id":"159831","messageId":"AANLkTinGUR=ny7kg-2TUAn=p=VDs-XrVfOdYgm+uRvrP@mail.gmail.com","threadId":"26232","inReplyTo":"7voc7s5uy3.fsf@alter.siamese.dyndns.org","subject":"Re: Why don't git-init and git-clone probe for core.ignorecase on Windows > XP?","fromName":"Dun Peal","fromEmail":"dunpealer@gmail.com","sentAt":"2011-01-24T21:15:30Z","receivedAt":"2011-01-24T21:15:30Z","isPatch":false,"sender":{"key":"dunpealer@gmail.com","avatar":"https://gravatar.com/avatar/42f3e6a1166eb44e33f24c20ccbe809fa8591413f366dfe3755c8a8d4935ace9?d=mp&s=160"},"body":"Thanks Junio, this question was due to a misunderstanding on my part:\n\nFor some reason, I thought \"probe\" in the man meant asking the user\nwhether core.ignorecase should be set. I vaguely recall there's\nanother (also Windows-related) setting that is interactively queried\nlike that.\n\nFollowing your reply I tested with recent (1.7) installations of\nmsysgit and core.ignorecase is set automatically to true in\n.git/config for newly created / cloned repo on NTFS over Windows 7.\n\nThanks again and sorry for the misunderstanding, D.\n\nOn Fri, Jan 7, 2011 at 2:18 PM, Junio C Hamano <gitster@pobox.com> wrote:\n> Dun Peal <dunpealer@gmail.com> writes:\n>\n>> The git-config manpage says about core.ignorecase:\n>>\n>> \"The default is false, except git-clone(1) or git-init(1) will probe\n>> and set core.ignorecase true if appropriate when the repository is\n>> created.\"\n>>\n>> I assume this is happening when you clone or init on FAT, which is\n>> explicitly mentioned earlier in that section. But apparently it\n>> doesn't happen for either XP, Vista or 7. While those newer releases\n>> use NTFS, which technically supports case-sensitivity, the operating\n>> itself still apparently doesn't, so it would seem like git-clone and\n>> git-init should probe regarding the core.ignorecase on any version of\n>> Windows, no?\n>\n> Sorry, but it is unclear if you are complaining that core.ignorecase is\n> set (but you believe it shouldn't be) or it is not set (but you believe it\n> should be) on NTFS from the description.\n>\n> As far as I can tell from the code (I obviously only look at the plain\n> vanilla git, and msysgit might have some patch to this part, I dunno.  Oh\n> by the way you didn't say which version you are complaining about,\n> either), we do the probing on all systems (including POSIX folks with FAT\n> filesystem mounted) by first creating .git/config and then checking if a\n> file .git/CoNfIg which we know we never created can be accessed.  If we\n> can, that means the filesystem ignores case, iow, we cannot have two files\n> config and CoNfIg at the same time, and set core.ignorecase to true.\n>\n"}]}