git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH] t5580: add Cygwin support

From
Junio C Hamano <gitster@pobox.com>
Date
Nov 1, 2017, 01:44 UTC
Message-ID
<xmqq1sliydqh.fsf@gitster.mtv.corp.google.com>
In-Reply-To
<20171031131903.10496-1-adam@dinwoodie.org>
Adam Dinwoodie <adam@dinwoodie.org> writes:
Show 31 quoted lines
> t5580 tests that specifying Windows UNC paths works with Git.  Cygwin
> supports UNC paths, albeit only using forward slashes, not backslashes,
> so run the compatible tests on Cygwin as well as MinGW.
>
> The only complication is Cygwin's `pwd`, which returns a *nix-style
> path, and that's not suitable for calculating the UNC path to the
> current directory.  Instead use Cygwin's `cygpath` utility to get the
> Windows-style path.
>
> Signed-off-by: Adam Dinwoodie <adam@dinwoodie.org>
> ---
>  t/t5580-clone-push-unc.sh | 12 ++++++++----
>  1 file changed, 8 insertions(+), 4 deletions(-)
>
> diff --git a/t/t5580-clone-push-unc.sh b/t/t5580-clone-push-unc.sh
> index b322c2f72..47a9a7cda 100755
> --- a/t/t5580-clone-push-unc.sh
> +++ b/t/t5580-clone-push-unc.sh
> @@ -3,12 +3,16 @@
>  test_description='various Windows-only path tests'
>  . ./test-lib.sh
>  
> -if ! test_have_prereq MINGW; then
> +if test_have_prereq CYGWIN; then
> +	alias winpwd='cygpath -aw .'
> +elif test_have_prereq MINGW; then
> +	alias winpwd=pwd
> +else
>  	skip_all='skipping Windows-only path tests'
>  	test_done
>  fi

The fact that UNCPATH matters only on windows-related platforms justifies the name used for this alias, I guess ;-)

Show 17 quoted lines
>  
> -UNCPATH="$(pwd)"
> +UNCPATH="$(winpwd)"
>  case "$UNCPATH" in
>  [A-Z]:*)
>  	# Use administrative share e.g. \\localhost\C$\git-sdk-64\usr\src\git
> @@ -45,8 +49,8 @@ test_expect_success push '
>  	test "$rev" = "$(git rev-parse --verify refs/heads/to-push)"
>  '
>  
> -test_expect_success 'remote nick cannot contain backslashes' '
> -	BACKSLASHED="$(pwd | tr / \\\\)" &&
> +test_expect_success MINGW 'remote nick cannot contain backslashes' '
> +	BACKSLASHED="$(winpwd | tr / \\\\)" &&
>  	git ls-remote "$BACKSLASHED" >out 2>err &&
>  	test_i18ngrep ! "unable to access" err
>  '
Previous: Johannes SchindelinNext: Adam Dinwoodie
Message 3 of 4 in “t5580: add Cygwin support”
  1. t5580: add Cygwin supportAdam Dinwoodie, Oct 31, 2017
  2. Johannes SchindelinOct 31, 2017
  3. Junio C HamanoNov 1, 2017
  4. Adam DinwoodieNov 1, 2017

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.