Re: [PATCH 5/6] t7063: use POSIX find(1) syntax
- From
Danh Doan <congdanhqx@gmail.com>
- Date
- Mar 20, 2020, 01:41 UTC
- Message-ID
- <20200320014142.GF1858@danh.dev>
- In-Reply-To
- <xmqqsgi4c7o6.fsf@gitster.c.googlers.com>
On 2020-03-19 15:16:09-0700, Junio C Hamano <gitster@pobox.com> wrote:
Show 14 quoted lines
> Jeff King <peff@peff.net> writes:
>
> > On Thu, Mar 19, 2020 at 09:00:06PM +0700, Đoàn Trần Công Danh wrote:
> >
> >> Since commit 6b7728db81, (t7063: work around FreeBSD's lazy mtime
> >> update feature, 2016-08-03), we started to use ls as a trick to update
> >> directory's mtime.
> >>
> >> However, `-ls` flag isn't required by POSIX's find(1), and
> >> busybox(1) doesn't implement it.
> >>
> >> Use an equivalence `-exec ls -dils {} +` instead.
> >
> > Makes sense. I wonder if we need all of "-dils", but it's not clear toFrom the original commit message, I think whichever flags that call stat(2) would be do it. It's `-d` (to check is_directory), and `-i` for inode number.
This make make wonder, will it be enough to just use:
find . -type d >/dev/null
Show 10 quoted lines
> > me which syscalls actually trigger the FreeBSD lazy-update behavior. I > > guess probably it's stat()ing the directory, so "ls -ld" would be > > sufficient (and that's implied by the examples in 6b7728db81). > > > > But I doubt the extra options would create a portability problem, so I > > think it's fine either way. > > Thanks. I too wondered if -dils is really needed (POSIX of course > have all of them, but we have to deal with non-POSIX systems, too, > and I am not sure how things like "-i" works there).
I think "-i" asks for stat(2) to get inode number, which will ask FreeBSD sync mtime.
> > s/equivalence/equivalent/; perhaps?
Will do, I've never correctly used -ence and -ent pairs of words.
-- Danh