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

Re: Bug report: Characters in file names

From: Stefan Küng <tortoisesvn_at_gmail.com>
Date: 2007-04-30 20:43:17 CEST

Christian Iversen wrote:
> (Please CC, I'm not on the list!)
>
> First of all, thank you for making such an excellent windows client for
> SVN.
>
> Secondly, I've found a 100% (easily) reproducible bug in the Tortoise.

I'm sorry, but that's not a bug. That's by design.

> Simply put, when comitting a file with a character that is allowed in
> unix - for instance, ":", the commits works without problems.

Sure. On linux/unix, you can commit such files. Subversion must not
interfere with that, because there, such filenames are perfectly legal.

> When trying to check out this file on Windows, a rather strange error
> message is given, of course as an indirect effect of the main problem:
> the ":" character can't be used in filenames on Windows.

True. But what should Subversion do here?

> I guess a local-renaming-scheme where the file would simply be called
> something else in the checkout would be pretty difficult, but could we
> at least have a situation where the file is not checked out, and a
> warning given? Or, just a more instructive error message?

Just locally rename such files? Please think about that some more:
* you can't compile your project anymore, because the 'real' file can't
be found
* any script in your build system relying on the real filename will break
* how should the filename be chosen? Whatever scheme Subversion would
choose, there's always a chance that a file with exactly the 'renamed'
filename already exists. Sure, it could try again with a different
rename - but that would make it inconsistent and therefore unreliable.

An error is the best option here.
If you want a better error message in such cases, you have to ask for it
on the Subversion mailing list, because that's really a Subversion issue.

btw: you could also install a pre-commit hook script which checks for
such filenames and reject the commit. That way, you'll never get such
files into the repository in the first place.

Stefan

-- 
        ___
   oo  // \\      "De Chelonian Mobile"
  (_,\/ \_/ \     TortoiseSVN
    \ \_/_\_/>    The coolest Interface to (Sub)Version Control
    /_/   \_\     http://tortoisesvn.net
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tortoisesvn.tigris.org
For additional commands, e-mail: users-help@tortoisesvn.tigris.org
Received on Mon Apr 30 20:43:36 2007

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

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