Return-Path: X-Original-To: apmail-subversion-users-archive@minotaur.apache.org Delivered-To: apmail-subversion-users-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 5EB05D426 for ; Mon, 12 Nov 2012 13:26:56 +0000 (UTC) Received: (qmail 54995 invoked by uid 500); 12 Nov 2012 13:26:55 -0000 Delivered-To: apmail-subversion-users-archive@subversion.apache.org Received: (qmail 54778 invoked by uid 500); 12 Nov 2012 13:26:55 -0000 Mailing-List: contact users-help@subversion.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Delivered-To: mailing list users@subversion.apache.org Received: (qmail 54751 invoked by uid 99); 12 Nov 2012 13:26:54 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 12 Nov 2012 13:26:54 +0000 X-ASF-Spam-Status: No, hits=-0.7 required=5.0 tests=RCVD_IN_DNSWL_LOW,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of jcorvel@gmail.com designates 209.85.220.171 as permitted sender) Received: from [209.85.220.171] (HELO mail-vc0-f171.google.com) (209.85.220.171) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 12 Nov 2012 13:26:46 +0000 Received: by mail-vc0-f171.google.com with SMTP id m18so8094318vcm.16 for ; Mon, 12 Nov 2012 05:26:25 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-type; bh=+PbvHO85rWELuUrtmhGMEFDXF9nSVODHTuzZkLTItn0=; b=k3fByESFt0JtxoHawvmCAL/km+xEF5VEMS+CyQP3rt3WohMGZ9Fdu0kJpH++KFf+xI +oMJVZiiDBWYpJg8RXEHzdS64VvpNbc10uSY8Uw2z3mobSVtUcAuIUhM0qfEQXXV89pm gPDJeVNLkllzZViQ1OWzudgNG0f2h6+4fKhAUtkmJKnQAcGa9Bh+EljPAXwsm3AMgrqr BVi9wWTM7MbbnnFFeDI7nB4aNjNPfhLglLMcLLvPm8jJMQpiAIUwj68784Bny2D/Vxrx VKsCAQb5UPUsLNg6KXwd+gY1puIdfPUQSgnXbaOY2hNW5PZTSciMQaGdzpywd2gl2K25 HZEQ== Received: by 10.52.92.229 with SMTP id cp5mr21456487vdb.14.1352726785532; Mon, 12 Nov 2012 05:26:25 -0800 (PST) MIME-Version: 1.0 Received: by 10.220.212.79 with HTTP; Mon, 12 Nov 2012 05:26:05 -0800 (PST) In-Reply-To: References: From: Johan Corveleyn Date: Mon, 12 Nov 2012 14:26:05 +0100 Message-ID: Subject: Re: Case sensitivity bug in windows with powershell. To: Sebastian Andersson Cc: users@subversion.apache.org Content-Type: text/plain; charset=ISO-8859-1 X-Virus-Checked: Checked by ClamAV on apache.org On Mon, Nov 12, 2012 at 2:03 PM, Sebastian Andersson wrote: > On Mon, Nov 12, 2012 at 1:13 PM, Johan Corveleyn wrote: >> Hm, I don't see this problem with "cd" in cmd.exe. > > No, the problem is only with powershell, but I do believe powershell > does what it is designed to do in this case. It uses a unified > location system for more things than just filesystems (you can cd into > the registry, LDAP etc) and some of them are case sensitive so it > preserves the user's typed string. The problem is also with the > Set-Location cmdlet, the old, default "cd" command in powershell. > > Powershell contributes to this problem a bit more; in powershell you > can tab-expand the path names. If you just tab-expand one directory at > a time, it changes to the correct case of it. But if you write two > directories at once (ie apa\Banana), only the second directory gets > changed into the correct case. With a longer path and a single letter > with the incorrect case, then it is of course a lot less obvious what > is wrong. > > > From a usability point of view, this should be fixed in subversion as > windows (and most OSX users) expect that the file names should be case > insensitive and other uses of subversion work correctly when the wrong > case is used, ie: > PS C:\temp\WC> svn mkdir APA > A APA > PS C:\temp\WC> svn mkdir apa\banan > A APA\banan > > At the very least the error message should suggest a fix. OK, I see. I still find the behavior of Powershell pretty strange here. You say that it "preserves the user's typed string", but I do not agree with that: it ignores the casing that's present on disk, and that should be the casing that's preserved and shown everywhere. At least that's my opinion. If it would *really* preserve the user's typed string, then it should say "apa does not exist" (as with a case-sensitive filesystem). If Set-Location(Ex) would be consistent with all other Windows tools, and with the behavior you actually want from subversion, then it would say "OK, I'm case-insensitive here, the user asks for apa, but there is APA on disk, so the user means APA, so I'll act on APA -> c:\temp\WC\APA". But anyway, we probably can't do anything about that Powershell behaviour, and perhaps it's possible to work around that from within subversion. So please go ahead and file an issue for this. -- Johan