Re: [PATCH] git-new-workdir: Don't fail if the target directory is empty
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Nov 18, 2014, 19:32 UTC
- Message-ID
- <xmqq8uj8wbhl.fsf@gitster.dls.corp.google.com>
- In-Reply-To
- <s934mtwo0zv.fsf@mad-scientist.net>
Paul Smith <paul@mad-scientist.net> writes:
Show 8 quoted lines
>>> + if test $(ls -a1 "$new_workdir/." | wc -l) -ne 2 > >> I wonder if this check is portable for all platforms we care about, >> but that is OK, as it should be so for the ones I think of and care >> about ;-) > > Do you mean "." and ".." representing an empty directory? That will > work on any system where /bin/sh works, for sure.
Even on network mounts from esoteric filesystems and such? When
http://pubs.opengroup.org/onlinepubs/9699919799/utilities/ls.html
mentions the "-A" option, it says:
-A
Write out all directory entries, including those whose names
begin with a <period> ( '.' ) but excluding the entries dot
and dot-dot (if they exist).The "if they exist" part suggests, at least to me, that it is valid for a POSIX filesystem to lack these two (I suspect that one may be able to find a more definitive answer from other parts of the POSIX but I didn't bother).