Automatically apply “git update-index –chmod=+x” to executable files

git 2.9.X/2.10 (Q3 2016) brings chmod to git add itself!

See commit 4e55ed3 (31 May 2016) by Edward Thomson (ethomson).
Helped-by: Johannes Schindelin (dscho).
(Merged by Junio C Hamano — gitster in commit c8b080a, 06 Jul 2016)

add: add --chmod=+x / --chmod=-x options

The executable bit will not be detected (and therefore will not be
set) for paths in a repository with core.filemode set to false,
though the users may still wish to add files as executable for
compatibility with other users who do have core.filemode
functionality.
For example, Windows users adding shell scripts may wish to add them as executable for compatibility with users on non-Windows.

Although this can be done with a plumbing command (git update-index --add --chmod=+x foo), teaching the git-add command allows users to set a file executable with a command that they’re already familiar with.

You can see the origin of this new feature in “How to create file execute mode permissions in Git on Windows?” (Feb. 2011)

Leave a Comment