{"thread":{"id":"30247","subject":"Illegal filename characters one Windows","startedAt":"2012-04-15T00:07:26Z","lastAt":"2012-04-15T17:16:29Z","messageCount":2,"participants":["Clemens Buchacher","Johannes Sixt"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"189308","messageId":"20120415000725.GA32140@ecki","threadId":"30247","inReplyTo":null,"subject":"Illegal filename characters one Windows","fromName":"Clemens Buchacher","fromEmail":"drizzd@aon.at","sentAt":"2012-04-15T00:07:26Z","receivedAt":"2012-04-15T00:07:26Z","isPatch":false,"sender":{"key":"drizzd@gmx.net","avatar":"https://avatars.githubusercontent.com/u/59082?v=4"},"body":"Hi,\n\nI recently noticed that git does not deal very well with illegal\nfilenames on Windows. I have a repository which contains a couple of\nfilenames like \"Re: some email.eml\". On a Windows box, those files get\ntruncated to just \"Re\" during checkout, because ':' is an illegal\ncharacter for filenames on Windows. [1]\n\nI know that the easiest solution would be to simply remove the illegal\ncharacters on my Linux box and be done with it. But I dislike the fact\nthat git cannot handle such filenames more gracefully.\n\nSo I have been wondering how to fix this. I have considered converting\nthe filename to unicode or URL encoding or even just dropping the\nillegal characters on checkout. But no matter which conversion I choose,\nit will conflict with the converted filename, which would be a valid\nindex entry itself.\n\nIf a reasonable solution is not possible, maybe we should not try to\ncheckout such files at all, and mark them with --skip-worktree. That way\none can at least use such repositories, as long as one does not have to\ntouch any files with illegal characters in their filename. As it is,\nmost commands are not usable because the work tree is always dirty (the\nfiles with illegal names have been \"removed\").\n\nAny better ideas?\n\nClemens\n\n[1] http://en.wikipedia.org/wiki/Filename\n"},{"id":"189342","messageId":"4F8B026D.5070505@kdbg.org","threadId":"30247","inReplyTo":"20120415000725.GA32140@ecki","subject":"Re: [msysGit] Illegal filename characters one Windows","fromName":"Johannes Sixt","fromEmail":"j6t@kdbg.org","sentAt":"2012-04-15T17:16:29Z","receivedAt":"2012-04-15T17:16:29Z","isPatch":false,"sender":{"key":"j6t@kdbg.org","avatar":"https://avatars.githubusercontent.com/u/14810926?v=4"},"body":"Am 15.04.2012 02:07, schrieb Clemens Buchacher:\n> I recently noticed that git does not deal very well with illegal\n> filenames on Windows. I have a repository which contains a couple of\n> filenames like \"Re: some email.eml\". On a Windows box, those files get\n> truncated to just \"Re\" during checkout, because ':' is an illegal\n> character for filenames on Windows. [1]\n\nThis is a issue very similar to files named nul, aux, prn, com1 and the\nlike; they can't be checked out, either. I've suggested to use sparse\ncheckout in such cases; other than that, I think we don't have a\nsolution for it.\n\n-- Hannes\n"}]}