{"thread":{"id":"17722","subject":"Q: description of file name encoding approach used by git","startedAt":"2009-02-11T11:56:24Z","lastAt":"2009-02-11T16:08:48Z","messageCount":2,"participants":["Constantine Plotnikov","Jay Soffian"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"104179","messageId":"85647ef50902110356l19870259t9de22fd8827ac144@mail.gmail.com","threadId":"17722","inReplyTo":null,"subject":"Q: description of file name encoding approach used by git","fromName":"Constantine Plotnikov","fromEmail":"constantine.plotnikov@gmail.com","sentAt":"2009-02-11T11:56:24Z","receivedAt":"2009-02-11T11:56:24Z","isPatch":false,"sender":{"key":"constantine.plotnikov@gmail.com","avatar":null},"body":"I'm interested if there is some document that specifies the approach\nof encoding non-ASCII file names used by the git and related issues.\nI'm particularly interested in cross-platform issues, since I'm\nwriting plugin for cross-platform tool.\n\nMy understanding based on previous discussions of the issue is that\nGIT saves file names as bytes in the tree objects without specifying\nactual encoding used. And there will be problem if different clients\nuse different system encoding.\n\nThe list of issues known to me is:\n1. All Linux and Unix machines that use the same git repository should\nuse the same encoding (ru_RU.KOI-8 and ru_RU.UTF-8 are not\ncompatible).\n2. On windows UTF-8 codepage should be specified for msys git in order\nto force it using UTF-8 if any cross-platform support is wanted. (I do\nnot known about cygwin git).\n3. As I understand, there is an unresolved problem with Mac OSX HFS+\ncase insensitive file system due to file name normalization.\n4. Git log seems to ignore encoding specified on the command line when\nprinting file names (for example in case of --name-status).\n\nAre these issues still open?\nAre there other issues?\n\nRegards,\nConstantine\n"},{"id":"104201","messageId":"76718490902110808g47b3ce0bm24419c89b5cb4aaa@mail.gmail.com","threadId":"17722","inReplyTo":"85647ef50902110356l19870259t9de22fd8827ac144@mail.gmail.com","subject":"Re: Q: description of file name encoding approach used by git","fromName":"Jay Soffian","fromEmail":"jaysoffian@gmail.com","sentAt":"2009-02-11T16:08:48Z","receivedAt":"2009-02-11T16:08:48Z","isPatch":false,"sender":{"key":"jaysoffian@gmail.com","avatar":"https://avatars.githubusercontent.com/u/155970?v=4"},"body":"On Wed, Feb 11, 2009 at 6:56 AM, Constantine Plotnikov\n<constantine.plotnikov@gmail.com> wrote:\n> 3. As I understand, there is an unresolved problem with Mac OSX HFS+\n> case insensitive file system due to file name normalization.\n\nHFS+ can be configured to be case-sensitive, though it is not by\ndefault. However, this is only a problem if the repo contains > 1\nfilenames that collide in a case-insensitive filesystem, since HFS+ is\ncase-preserving.\n\nThe larger HFS+ problem is that it performs Unicode NFD normalization,\nwhich is unfortunately lossy. There are some good links about the\ntopic here: https://bugs.launchpad.net/bzr/+bug/172383\n\nj.\n"}]}