Adam Dinwoodie <adam@xxxxxxxxxxxxx> writes: > 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@xxxxxxxxxxxxx> > --- > 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 ;-) > > -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 > '