threads / discuss / 58864

Program path added to sparse file specification if leading slash is used

Subject: Program path added to sparse file specification if leading slash is used

## tl;dr

2 messages between Nov 28, 2022 and Dec 9, 2022.

replies: 1people: 2as markdown or json

Andreas Schrell· Nov 28, 2022, 13:10 UTC · lore
Hi,
What did you do before the bug happened? (Steps to reproduce your issue)

$ git sparse-checkout set /Workspace/Build/Pipeline $ git sparse-checkout list C:/Program Files/Git/Workspace/Build/Pipeline

$ git sparse-checkout set Workspace/Build/Pipeline $ git sparse-checkout list Workspace/Build/Pipeline

What did you expect to happen? (Expected behavior) The program path should not be included in the file spec, if I set the leading slash

What happened instead? (Actual behavior) The git program path was added in the sparce file spec.

What's different between what you expected and what actually happened?
Wrong path
Anything else you want to add:
Please review the rest of the bug report below.
You can delete any lines you don't wish to share.
[System Info]
git version:
git version 2.38.1.windows.1
cpu: x86_64
built from commit: b85c8f604d375d4d773a36842964e8a7ec056aae
sizeof-long: 4
sizeof-size_t: 8
shell-path: /bin/sh
feature: fsmonitor--daemon
uname: Windows 10.0 19045
compiler info: gnuc: 12.2

libc info: no libc information available $SHELL (typically, interactive shell): C:\Program Files\Git\usr\bin\bash.exe

[Enabled Hooks]
Mit freundlichen Grüßen
Andreas Schrell
Software Engineer
Johannes Schindelin· Dec 9, 2022, 07:57 UTC · re: Andreas Schrell · lore

Re: Program path added to sparse file specification if leading slash is used

Hi Andreas,
On Mon, 28 Nov 2022, Andreas Schrell wrote:
> What did you do before the bug happened? (Steps to reproduce your issue)
>
> $ git sparse-checkout set /Workspace/Build/Pipeline
> $ git sparse-checkout list C:/Program Files/Git/Workspace/Build/Pipeline

From Git for Windows' release notes, in the "Known Issues" section, https://github.com/git-for-windows/build-extra/blob/main/ReleaseNotes.md#known-issues:

	If you specify command-line options starting with a slash,
	POSIX-to-Windows path conversion will kick in converting e.g.
	"/usr/bin/bash.exe" to "C:\Program Files\Git\usr\bin\bash.exe". When that
	is not desired -- e.g. "--upload-pack=/opt/git/bin/git-upload-pack" or
	"-L/regex/" -- you need to set the environment variable MSYS_NO_PATHCONV
	temporarily, like so:
	    MSYS_NO_PATHCONV=1 git blame -L/pathconv/ msys2_path_conv.cc
	    Alternatively, you can double the first slash to avoid
	    POSIX-to-Windows path conversion, e.g. "//usr/bin/bash.exe".

Ciao, Johannes

← back to recent threads