[issue3047] addremove can introduce case collisions despite setting ui.portablefilenames
John Gee
bugs at mercurial.selenic.com
Fri Oct 14 05:46:10 CDT 2011
New submission from John Gee <mercurialbts_j at ruru.gen.nz>:
I am running hg on Mac OS X (on a case insensitive volume) sharing a
repository with Windows users. I set ui.portablefilenames to abort to prevent
Bad Things from happening when ill-behaved tools modify the case of a
filename (I am looking at you Xcode).
The ui.portablefilenames does protect add but not addremove. Example commands
alone, and output mixed with commands.
hg --version
hg showconfig | grep portable
mkdir repo
cd repo
hg init
touch a
hg add
hg commit -m "lowercase"
mv a A
hg status
hg add A
hg add
hg addremove
hg commit -m oops
hg update
$ hg --version
Mercurial Distributed SCM (version 1.9.2+20110831)
(see http://mercurial.selenic.com for more information)
Copyright (C) 2005-2011 Matt Mackall and others
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
$ hg showconfig | grep portable
ui.portablefilenames=abort
$ mkdir repo
$ cd repo
$ hg init
$ touch a
$ hg add
adding a
$ hg commit -m "lowercase"
$ mv a A
$ hg status
? A
$ hg add A
abort: possible case-folding collision for A
$ hg add
abort: possible case-folding collision for A
$ hg addremove
adding A
$ hg commit -m oops
$ hg update
abort: case-folding collision between a and A
----------
messages: 17636
nosy: shadowspawn
priority: bug
status: unread
title: addremove can introduce case collisions despite setting ui.portablefilenames
____________________________________________________
Mercurial issue tracker <bugs at mercurial.selenic.com>
<http://mercurial.selenic.com/bts/issue3047>
____________________________________________________
More information about the Mercurial-devel
mailing list