Pasha Bolokhov <pasha.bolokhov@xxxxxxxxx> writes: > diff --git a/t/t0008-ignores.sh b/t/t0008-ignores.sh > index 63beb99..5ef5ad3 100755 > --- a/t/t0008-ignores.sh > +++ b/t/t0008-ignores.sh > @@ -806,4 +806,27 @@ test_expect_success !MINGW 'quoting allows trailing whitespace' ' > test_cmp err.expect err > ' > > +test_expect_success NOT_MINGW,NOT_CYGWIN 'correct handling of backslashes' ' > + rm -rf whitespace && > + mkdir whitespace && > + >"whitespace/trailing 1 " && > + >"whitespace/trailing 2 \\\\" && > + >"whitespace/trailing 3 \\\\" && > + >"whitespace/trailing 4 \\ " && > + >"whitespace/trailing 5 \\ \\ " && > + >"whitespace/trailing 6 \\a\\" && > + >whitespace/untracked && > + echo "whitespace/trailing 1 \\ " >ignore && > + echo "whitespace/trailing 2 \\\\\\\\\\\\\\\\" >>ignore && > + echo "whitespace/trailing 3 \\\\\\\\\\\\\\\\ " >>ignore && > + echo "whitespace/trailing 4 \\\\\\\\\\\\ " >>ignore && > + echo "whitespace/trailing 5 \\\\\\\\ \\\\\\\\\\\\ " >>ignore && > + echo "whitespace/trailing 6 \\\\\\\\a\\\\\\\\" >>ignore && > + echo whitespace/untracked >expect && > + >err.expect && > + git ls-files -o -X ignore whitespace >actual 2>err && > + test_cmp expect actual && > + test_cmp err.expect err > +' This passes with your shell set to dash but fails with bash. Let's fix it up like so. t/t0008-ignores.sh | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/t/t0008-ignores.sh b/t/t0008-ignores.sh index 5ef5ad3..39e55a1 100755 --- a/t/t0008-ignores.sh +++ b/t/t0008-ignores.sh @@ -816,12 +816,14 @@ test_expect_success NOT_MINGW,NOT_CYGWIN 'correct handling of backslashes' ' >"whitespace/trailing 5 \\ \\ " && >"whitespace/trailing 6 \\a\\" && >whitespace/untracked && - echo "whitespace/trailing 1 \\ " >ignore && - echo "whitespace/trailing 2 \\\\\\\\\\\\\\\\" >>ignore && - echo "whitespace/trailing 3 \\\\\\\\\\\\\\\\ " >>ignore && - echo "whitespace/trailing 4 \\\\\\\\\\\\ " >>ignore && - echo "whitespace/trailing 5 \\\\\\\\ \\\\\\\\\\\\ " >>ignore && - echo "whitespace/trailing 6 \\\\\\\\a\\\\\\\\" >>ignore && + sed -e "s/Z$//" >ignore <<-\EOF && + whitespace/trailing 1 \ Z + whitespace/trailing 2 \\\\Z + whitespace/trailing 3 \\\\ Z + whitespace/trailing 4 \\\ Z + whitespace/trailing 5 \\ \\\ Z + whitespace/trailing 6 \\a\\Z + EOF echo whitespace/untracked >expect && >err.expect && git ls-files -o -X ignore whitespace >actual 2>err && -- 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