Re: Re-casing directories on case-insensitive systems
- From
Robin Rosenberg <robin.rosenberg@dewire.com>
- Date
- Jan 12, 2008, 00:57 UTC
- Message-ID
- <200801120157.47854.robin.rosenberg@dewire.com>
- In-Reply-To
- <7v3at3280v.fsf@gitster.siamese.dyndns.org>
lördagen den 12 januari 2008 skrev Junio C Hamano:
Show 17 quoted lines
> Robin Rosenberg <robin.rosenberg@dewire.com> writes: > > > Could we just have a lookup table index extension for identifying the > > duplicates (when checking is enabled using core configuration option #3324)? > > That table would keep a mapping from a normalized form (maybe include > > canonical encoding while we're at it) to the actual octet sequence(s) used. > > I would agree that the index extension, if we ever are going to > do this, would be the right place to store this information, at > the single repository level. > > However, this opens up a can of worms. What's the canonical key > should be? If you want to protect yourself from a unicode > normalizing filesystem, you would use one canonicalization, > while if you want to protect from a case losing filesystem you > would use another? Or do we at the same time downcase and NFD > normalize at the same time and be done with it?
The worms are out already. So the question is whether there is a way of keeping them in the can instead of having them crawl all around. I think we could to both unicode (UTF-8 or NFD) and downcase at the same time.
> And where should the configuration be stored? If a project > wants to be interoperable across Linux and vfat, for example,
In the brand new ".gitconfig". It could in principle contain any config option, but that would not be safe so I guess one should only allow "safe" options there.
-- robin