Re: [PATCH] sparse-checkout: improve OS ls compatibility
- From
Ed Maste <emaste@freebsd.org>
- Date
- Dec 19, 2019, 02:18 UTC
- Message-ID
- <CAPyFy2BROa9iMWBWf1hioYDaoEXPvyUNGHOZaZiD0TzVVhEtoA@mail.gmail.com>
- In-Reply-To
- <46d9f9dd-b278-bade-af48-3a3bd2e4aa5e@gmail.com>
On Wed, 18 Dec 2019 at 21:07, Derrick Stolee <stolee@gmail.com> wrote:
Show 16 quoted lines
> > On 12/18/2019 8:58 PM, Ed Maste wrote: > > Thanks for the report! > > It was a little unclear from the get-go what exactly the issue is. > > > On FreeBSD, when executed by root ls enables the '-A' option: > > > > -A Include directory entries whose names begin with a dot (`.') > > except for . and ... Automatically set for the super-user unless > > -I is specified. > > It appears that the "ls" commands in the sparse-checkout tests are > reporting the ".git" directory when executed on FreeBSD as root. Is this > only as root?
Yes, this is only as root - it seems Cirrus-CI invokes the build and test scripts as root, which is why I had trouble reproducing it locally.
Show 6 quoted lines
> > Pipe ls's output to grep -v .git to remove the undesired entry. Also > > pass the -1 option to ensure one entry per line. > > What if we instead ran "ls -a" and added .git to our expected output > (when appropriate)? Would that be simpler (and reduce the process > count that this solution introduces).
I originally tried that approach and thought it was a bit cumbersome, but avoiding additional process invocations is a good argument. I'll send a v2 with that change instead.