Ed Maste <emaste@xxxxxxxxxxx> wrote: > There are several different ways this could be solved; this approach > felt cleanest to me, but there are at least two other reasonable > alternatives: > > * Add -a to the invocations and .git to the expected output > > * Add LSFLAGS and set it to -I on BSDs, to turn off the special dot > behaviour > > I'll submit a new patch if a different approach is preferred. Relying on "ls" itself seems a bit fragile. My first choice is to write more tests in Perl5 :) But using a shell for loop seems doable, here, since there doesn't seem to be wonky characters. I've done this in the past when I had to fix a system without "ls". This goes on top of your patch: diff --git a/t/t1091-sparse-checkout-builtin.sh b/t/t1091-sparse-checkout-builtin.sh index 3a3eafa653..a431d05643 100755 --- a/t/t1091-sparse-checkout-builtin.sh +++ b/t/t1091-sparse-checkout-builtin.sh @@ -6,7 +6,7 @@ test_description='sparse checkout builtin tests' ls_no_git() { - ls -1 "$1" | grep -v .git + ( cd "$1" && for i in *; do echo "$i"; done ) } test_expect_success 'setup' '