All of lore.kernel.org
 help / color / mirror / Atom feed
From: Johannes Sixt <j6t@kdbg.org>
To: Eris Belew <erisrenee@gmail.com>, git@vger.kernel.org
Subject: Re: Bug: Pathspec parsing on Windows fails when branch specified
Date: Wed, 20 Nov 2013 23:12:37 +0100	[thread overview]
Message-ID: <528D33D5.4090507@kdbg.org> (raw)
In-Reply-To: <CAM8h_A_zfX4U8hGxiw3_79zMZXmcTN3CPRUcrtsQTQdD4RaMhQ@mail.gmail.com>

Am 20.11.2013 22:09, schrieb Eris Belew:
> System: Windows Server 2008 R2
> Git: git version 1.8.4.msysgit.0
> Shell: Powershell V3 (No third-party modules loaded)
> 
> Summary:
>   When specifying a pathspec including a branch/commit, path separator
> characters are not translated. Since tab-completion in windows shells (ex:
> CMD, PowerShell, not unix-style shells running on windows) uses the windows
> path separator, and other git commands work fine with the windows path
> separator, the expected behavior would be to translate for me.
> 
> Reproduction:
>     git diff BRANCH:path\to\file path\to\file
> 
> Result:
>     fatal: Path 'path\to\file' does not exist in 'BRANCH'
> 
> Expected:
>     Normal diff operation
> 
> Workaround:
>     Manually convert pathspec. Examples of working command:
>         git diff BRANCH:path/to/file path\to\otherfile
>         git diff BRANCH:path/to/file path/to/otherfile

That's not a bug, it is expected behavior. "BRANCH:path/to/file" is not
"file on disk" syntax, but Git's syntax to reference a particular object
in the database. For this reason, forward-slashes are mandated; there is
no option to use backslashes in this case.

Backslashes could actually be part of directory and file names in the
database. It would be impossible to check out a tree with such names on
Windows, obviously.

-- Hannes

      reply	other threads:[~2013-11-20 22:39 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-11-20 21:09 Bug: Pathspec parsing on Windows fails when branch specified Eris Belew
2013-11-20 22:12 ` Johannes Sixt [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=528D33D5.4090507@kdbg.org \
    --to=j6t@kdbg.org \
    --cc=erisrenee@gmail.com \
    --cc=git@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.