On Tue, Jan 24, 2012 at 3:03 PM, Daniel Shahaf <danie...@elego.de> wrote: > Hyrum K Wright wrote on Tue, Jan 24, 2012 at 13:57:28 +0000: >> On Tue, Jan 24, 2012 at 1:54 PM, Daniel Shahaf <danie...@elego.de> wrote: >> > Philip Martin wrote on Tue, Jan 24, 2012 at 13:45:49 +0000: >> >> Johan Corveleyn <jcor...@gmail.com> writes: >> >> >> >> > On Mon, Jan 23, 2012 at 4:28 PM, Philip Martin >> >> > <philip.mar...@wandisco.com> wrote: >> >> >> Is that sufficient? Given three files "foo", "FOO" and "Foo", one in >> >> >> wc.db, one on disk and one on the command line, is that the same file? >> >> >> Add another "fOO" to the database. It's now ambiguous? >> >> > >> >> > No, it's not: >> >> >> >> Is that answering the first question "same file?" or the second question >> >> "ambiguous?" or both? >> >> >> >> > >> >> > - Both fOO and foo exist in wc.db. >> >> > - FOO is on disk. >> >> > - I invoke 'svn <subcommand> Foo': >> >> > 1. Is there a case-exact match in wc.db? No >> >> > 2. Ok, then apply truepath-ing: so the user is meaning FOO. >> >> > >> >> > But the user can still do useful things to fOO and foo, if he gives >> >> > the exact correct casing. >> >> >> >> What about the first bit. >> >> >> >> Given three files "foo", "FOO" and "Foo", one in >> >> wc.db, one on disk and one on the command line, is that the same file? >> >> >> >> My understanding is that a Windows user expects those to be the same >> >> file. So "svn st FOO", "svn st foo" and "svn st Foo" all refer to the >> >> file in wc.db and the file on disk even though the cases don't match. >> > >> > But normal windows programs don't have the concept of "one on disk and >> > one in wc.db". And I imagine we want to have some syntax to refer to the >> > latter. >> >> @WORKING ? > > I'm not sure this addresses the question of 'what object is identified > by the the stem (ie, path sans peg)'. Perhaps wc.db:/FOO? (using the > pseudo-drive syntax, so this isn't currently in use for anythin)
I'm sorry, but I don't understand the point of this discussion anymore. There is already a solution for this problem: it's the fix for issue #3865. This implements the following for the command line client: If there is no case-exact match on disk, but there is a case-exact match in wc.db, assume the user refers to the latter. Otherwise case-normalize like any other Windows app. IMHO this is the most natural and simple way to do this. I don't see the need for more complicated schemes. -- Johan