Am 21.09.2016 um 20:12 schrieb Junio C Hamano:
Thomas Gummerer <t.gumme...@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

Reply via email to