Re: [PATCH tg/add-chmod+x-fix 2/2] t3700-add: protect one --chmod=+x test with POSIXPERM
- From
Johannes Sixt <j6t@kdbg.org>
- Date
- Sep 21, 2016, 20:47 UTC
- Message-ID
- <8b612559-ce78-db7d-235f-61b5f78720e4@kdbg.org>
- In-Reply-To
- <xmqqtwd986ml.fsf@gitster.mtv.corp.google.com>
Am 21.09.2016 um 20:12 schrieb Junio C Hamano:
Show 9 quoted lines
> Thomas Gummerer <t.gummerer@gmail.com> writes: > >>> I am surprised that add --chmod=+x changes only the index, but not >>> the file on disk!?! >> >> I *think* --chmod is mainly thought of as a convenience for git users >> on a filesystem that doesn't have an executable flag. So it was >> introduced this way as the permissions on the file system don't matter >> in that case.
OK.
>> A change of that behaviour may make sense for this >> though.
Hm, git-add is for moving content from the worktree to the index. I don't think it should change the worktree. I should not have been surprised.
It should probably not even introduce a change in the index that it does not see in the worktree, but, hey, git-add is a reasonable porcelain substitute for the --chmod task that otherwise git-update-index would have to do.
> Perhaps we shouldn't even test this, then?
If I am right that git-add should not change the worktree, it should be tested. But 'git status -s' is probably the wrong tool for the reasons you gave (it could accidentally detect a change due to content difference instead of a file mode difference). At any rate, such a test must be protected with POSIXPERM.
-- Hannes