From mboxrd@z Thu Jan 1 00:00:00 1970 From: Pedro Melo Subject: Re: git on MacOSX and files with decomposed utf-8 file names Date: Thu, 17 Jan 2008 19:02:00 +0000 Message-ID: References: <478E1FED.5010801@web.de> <65026F2B-5CE8-4238-A9AB-D3545D336B41@sb.org> <200801162251.54219.jnareb@gmail.com> <1574A90A-8C45-46AD-9402-34AE6F582B3F@sb.org> <7652B11D-9B9F-45EA-9465-8294B701FE7C@sb.org> <8AC4CC86-A711-483D-9F9C-5F8497006A1D@sb.org> <478F99E7.1050503@web.de> <6E1A0E9A-34D7-4D85-BD4B-CF56CE3927CA@simplicidade.org> Mime-Version: 1.0 (Apple Message framework v753) Content-Type: text/plain; charset=ISO-8859-1; delsp=yes format=flowed Content-Transfer-Encoding: QUOTED-PRINTABLE Cc: Mark Junker , "git@vger.kernel.org" To: Linus Torvalds X-From: git-owner@vger.kernel.org Thu Jan 17 20:03:12 2008 Return-path: Envelope-to: gcvg-git-2@gmane.org Received: from vger.kernel.org ([209.132.176.167]) by lo.gmane.org with esmtp (Exim 4.50) id 1JFa0s-00037z-28 for gcvg-git-2@gmane.org; Thu, 17 Jan 2008 20:02:54 +0100 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751861AbYAQTCH convert rfc822-to-quoted-printable (ORCPT ); Thu, 17 Jan 2008 14:02:07 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1751905AbYAQTCG (ORCPT ); Thu, 17 Jan 2008 14:02:06 -0500 Received: from mail.sl.pt ([212.55.140.13]:33686 "EHLO sl.pt" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751861AbYAQTCF convert rfc822-to-8bit (ORCPT ); Thu, 17 Jan 2008 14:02:05 -0500 Received: (qmail 30436 invoked from network); 17 Jan 2008 19:02:00 -0000 X-Virus-Status: Clean (0.01872 seconds) ; Version: 0.3-0.88.6 X-Spam-Flag: NO X-Spam-Status: NO (0.0/5.0) (0.00010 seconds / 0.29004 sA) Checked: by PTMail-AS v0.1 on mail.sl.pt Received: from unknown (HELO [192.168.1.209]) (melo@[81.193.151.201]) (envelope-sender ) by mail-sl (qmail-ldap-1.03) with SMTP for ; 17 Jan 2008 19:02:00 -0000 Received-SPF: neutral (mail-sl: domain of (null) is neutral about designating 81.193.151.201 as permitted sender) In-Reply-To: X-Mailer: Apple Mail (2.753) Sender: git-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: git@vger.kernel.org Archived-At: Hi, On Jan 17, 2008, at 6:44 PM, Linus Torvalds wrote: > On Thu, 17 Jan 2008, Pedro Melo wrote: >> >> On Jan 17, 2008, at 6:09 PM, Mark Junker wrote: >> >>> IMHO it would be the best solution when git stores all string =20 >>> meta data in >>> UTF-8 and converts it to the target systems file system encoding. =20 >>> That would >>> fix all those problems with different locales and file system =20 >>> encodings ... >> >> +1. >> >> And I would suggest the use of RFC 3454 as the guidelines for UTF-8 >> normalization. > > The problem is that there is no way to know what the "target system > encoding" is. Correct. Storing or using a normalized version of the filename is =20 only part of the problem. The full problem is: User A <-> filesystem A <-#-> git < ...... > git <-#-> filesystem B <-=20 > user B. You have to encode/decode/normalize on all the <-#-> and there is no =20 magic bullet. Each user would have to tell git "Hey I'm using utf-8" =20 or "Hey, I'm a masochist using HFS+". But I think its important for git to store the filenames in something =20 that at least permits this kind of scenario. All encoding/decoding/normalization is of course optional, and for =20 git, it still is a sequence of bytes. > And it wouldn't actually solve the bigger problem on OS X anyway: =20 > as long > as you are case-insensitive, you'll have all the same problems (ie th= e > insane OS X filesystem presumably thinks that "M=C4RCHEN" and =20 > "M=E4rchen" are > also identical, because they are "equivalent" names). Correct. HFS+ has bigger problems. I'm not sure if this is enough to =20 solve it. But it would solve two linux users using different encodings. And given that the filtering layers are optional, you have to =20 configure them, it wont bite nobody. Best regards, --=20 Pedro Melo Blog: http://www.simplicidade.org/notes/ XMPP ID: melo@simplicidade.org Use XMPP!