Ping... On Wed, Jul 30, 2014 at 2:43 AM, Karsten Blees <karsten.blees@xxxxxxxxx> wrote: > MSYS programs typically understand native Windows paths (e.g C:/git), but > native Windows programs (including MinGW) don't understand MSYS paths (e.g. > /c/git). > > On Windows, set TRASH_DIRECTORY to the absolute native path so that it can > be used more easily in tests. > > MSYS 'tar -f' interprets everything before ':' as hostname, not as drive > letter. Change respective tests to use stdin / stdout instead of '-f'. Also > use $TAR from GIT-BUILD-OPTIONS rather than hardcoded tar. > > Signed-off-by: Karsten Blees <blees@xxxxxxx> > --- > > Am 25.07.2014 14:30, schrieb Duy Nguyen: >> On Wed, Jul 23, 2014 at 9:17 PM, Karsten Blees <karsten.blees@xxxxxxxxx> wrote: >>> With the version in pu, three tests fail. t7001 is fixed with a newer 'cp'. >>> The other two are unrelated (introduced by nd/multiple-work-trees topic). >>> >>> * t1501-worktree: failed 1 >>> As of 5bbcb072 "setup.c: support multi-checkout repo setup" >>> Using $TRASH_DIRECTORY doesn't work on Windows. >>> >>> * t2026-prune-linked-checkouts: failed 1 >>> As of 404a45f1 "prune: strategies for linked checkouts" >>> Dito. >> >> I need your help here. Would saving $(pwd) to a variable and using it >> instead of $TRASH_DIRECTORY work? Some tests "cd" around and $(pwd) >> may not be the same as $TRASH_DIRECTORY. >> > > Yes, that would work. > > (Actually, you'd only need to change 'echo "$TRASH_DIR..."' in two places (both > before cd'ing away). The other instances are parameters to non-msys programs and > are thus automatically mangled by msys.dll.) > > However, I wonder why we don't set up TRASH_DIRECTORY to the native Windows path. > I believe we'd get much fewer 'special' cases that way. Ideally, you shouldn't > have to worry about the intricacies of MSYS path mangling when writing tests... > > [CCing msysgit for opinions] > > > t/t3513-revert-submodule.sh | 4 ++-- > t/t6041-bisect-submodule.sh | 4 ++-- > t/test-lib.sh | 1 + > 3 files changed, 5 insertions(+), 4 deletions(-) > > diff --git a/t/t3513-revert-submodule.sh b/t/t3513-revert-submodule.sh > index a1c4e02..4a44dd6 100755 > --- a/t/t3513-revert-submodule.sh > +++ b/t/t3513-revert-submodule.sh > @@ -14,11 +14,11 @@ test_description='revert can handle submodules' > git_revert () { > git status -su >expect && > ls -1pR * >>expect && > - tar czf "$TRASH_DIRECTORY/tmp.tgz" * && > + "$TAR" cz * >"$TRASH_DIRECTORY/tmp.tgz" && > git checkout "$1" && > git revert HEAD && > rm -rf * && > - tar xzf "$TRASH_DIRECTORY/tmp.tgz" && > + "$TAR" xz <"$TRASH_DIRECTORY/tmp.tgz" && > git status -su >actual && > ls -1pR * >>actual && > test_cmp expect actual && > diff --git a/t/t6041-bisect-submodule.sh b/t/t6041-bisect-submodule.sh > index c6b7aa6..0de614f 100755 > --- a/t/t6041-bisect-submodule.sh > +++ b/t/t6041-bisect-submodule.sh > @@ -8,7 +8,7 @@ test_description='bisect can handle submodules' > git_bisect () { > git status -su >expect && > ls -1pR * >>expect && > - tar czf "$TRASH_DIRECTORY/tmp.tgz" * && > + "$TAR" cz * > "$TRASH_DIRECTORY/tmp.tgz" && > GOOD=$(git rev-parse --verify HEAD) && > git checkout "$1" && > echo "foo" >bar && > @@ -20,7 +20,7 @@ git_bisect () { > git bisect start && > git bisect good $GOOD && > rm -rf * && > - tar xzf "$TRASH_DIRECTORY/tmp.tgz" && > + "$TAR" xz <"$TRASH_DIRECTORY/tmp.tgz" && > git status -su >actual && > ls -1pR * >>actual && > test_cmp expect actual && > diff --git a/t/test-lib.sh b/t/test-lib.sh > index 5102340..5f6397b 100644 > --- a/t/test-lib.sh > +++ b/t/test-lib.sh > @@ -868,6 +868,7 @@ case $(uname -s) in > md5sum "$@" > } > # git sees Windows-style pwd > + TRASH_DIRECTORY=$(pwd -W) > pwd () { > builtin pwd -W > } > -- > 2.0.2.897.g7f80809.dirty > -- Duy -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html