[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

RE: Bad bug in the Windows Client? (Case issue - duplicate files)

From: James FitzGibbon <jfitzgibbon_at_primustel.ca>
Date: 2005-06-07 20:31:29 CEST

There was a long thread on this a few months back. The short answer IIRC
was that it's not Subversion's job to handle (in-core) the limitations of
case-insensitive filesystems.
There is a contrib hook to protect against this type of thing from
happening. Take a look HYPERLINK
ab.net/repos/svn/trunk/contrib/hook-scripts/ (specifically HYPERLINK
# This script can be called from a pre-commit hook on either Windows or a
# like operating system. It implements the checks required to ensure that
# repository acts in a way which is compatible with a case preserving but
# case insensitive file system.
# When a file is added this script checks the file tree in the repository
# files which would be the same name on a case insensitive file system and
# rejects the commit.


From: Scott Palmer [mailto:scott.palmer@2connected.org]
Sent: Tuesday, June 07, 2005 2:24 PM
To: Brad
Cc: users@subversion.tigris.org
Subject: Re: Bad bug in the Windows Client? (Case issue - duplicate files)

On Jun 7, 2005, at 1:53 PM, Brad wrote:

I have encountered a severe problem with subversion in windowsXP.

I believe a user copied over a file called temp.JPG that they wanted to add
to subversion, however another file, temp.jpg already existed. Windows
overwrote the old one, subversion thought it was a new file and allowed the
user to add it. Once the file was committed,

It appears that users can commit files with the same names in different
"cases". Linux handles this just fine, but windowsXP does not. Currently any
user that tries to checkout from the repository in windows will get an error
and cannot proceed. Even once I fix this, around 2 dozen revisions will
already be "un-checkout-able" for them.

Shouldn't subversion have the ability to prevent this?

Yes, it should.

Does it already?

No, it doesn't - at least not out of the box.

Do I need to create a hook?


I need a way to prevent hundreds of users from doing this, many of which are
not computer literate. Any ideas?

Use a pre-commit hook that rejects commits that will result in files in the
repository that only differ by case.


No virus found in this incoming message.
Checked by AVG Anti-Virus.
Version: 7.0.323 / Virus Database: 267.6.5 - Release Date: 6/7/2005
No virus found in this outgoing message.
Checked by AVG Anti-Virus.
Version: 7.0.323 / Virus Database: 267.6.5 - Release Date: 6/7/2005
This electronic message contains information from Primus Telecommunications
Canada Inc. ("PRIMUS") , which may be legally privileged and confidential.
The information is intended to be for the use of the individual(s) or entity
named above. If you are not the intended recipient, be aware that any
disclosure, copying, distribution or use of the contents of this information
is prohibited. If you have received this electronic message in error, please
notify us by telephone or e-mail (to the number or address above)
immediately. Any views, opinions or advice expressed in this electronic
message are not necessarily the views, opinions or advice of PRIMUS.
It is the responsibility of the recipient to ensure that
any attachments are virus free and PRIMUS bears no responsibility
for any loss or damage arising in any way from the use
thereof.The term "PRIMUS" includes its affiliates.
Pour la version en franšais de ce message, veuillez voir
Received on Tue Jun 7 20:38:06 2005

This is an archived mail posted to the Subversion Users mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.