Re: On pathnames
- From
Sean <seanlkml@sympatico.ca>
- Date
- Jan 24, 2008, 23:56 UTC
- Message-ID
- <BAYC1-PASMTP12CD8892FB04872736D9DEAE380@CEZ.ICE>
- In-Reply-To
- <7vprvr7x8h.fsf@gitster.siamese.dyndns.org>
On Thu, 24 Jan 2008 13:02:54 -0800 Junio C Hamano <gitster@pobox.com> wrote:
Show 6 quoted lines
> One bad issue during development is that we cannot sanely > emulate case folding behaviour on non case-folding filesystems > without wrapping open(2), lstat(2), and friends, because of the > assumption we made above in (2) where we defined the term "case > folding". This means that the codepath to deal with case > folding filesystems inevitably are harder to debug.
All true. Though Linux support for creating and using HFS+ volumes seems like it may be helpful. Trying the test case patch[*] posted by Mitch Tishmack showed the problem here. The only slightly strange thing was that there didn't seem to be an issue with the gitweb/test/Märchen file after cloning to the HFS volume.
Sean.
[*] $ dd bs=1M count=250 < /dev/zero > hfs_vol 262144000 bytes (262 MB) copied, 6.12703 s, 42.8 MB/s
$ /sbin/mkfs.hfsplus -v Test -n c=4096,e=1024 hfs_vol Initialized hfs_vol as a 250 MB HFS Plus volume
$ mkdir hfs $ sudo mount -t hfsplus -o loop hfs_vol hfs $ sudo chmod a+rwx hfs $ cd hfs $ git clone ~/local/sources/git Initialized empty Git repository in ~/hfs/git/.git/ 49486 blocks
$ cd git $ make ...
$ cd t $ git apply ~/Mitch_Tishmack.patch $ ./t0060-normalization.sh * FAIL 1: setup
touch ä && git add ä && git commit -m "initial" git tag initial && git checkout -b topic && git mv ä tmp && git mv tmp ä && git commit -m "rename" && git checkout -f master * FAIL 2: rename (silent normalization) git mv ä ä && git commit -m "rename" * FAIL 3: merge (silent normalization)
git reset --hard initial && git merge topic * failed 3 among 3 test(s)
Sean.