From Gentoo Wiki
The information in this article is representative of former times and has been archived. It can be used for reference, but is most likely not appropriate for current usage. Generally archived articles should not be edited.
Making executable file non-executable
Git treats mode changes just like a change to the content of the file.
chmod -x example.file
git add example.file
Rolling back committed changes
If your commit has not been pushed yet, you can use git reset to remove the last commit.
git reset --hard HEAD^
If it has already been pushed, use git revert.
git revert <commit>