我通过命令更改了文件模式chmod +111 file.txt
,然后检查了 GIT 状态,结果显示:
在 master 分支上,尚未暂存提交的更改:(使用“git add ...”来更新将要提交的内容)(使用“git checkout -- ...”放弃工作目录中的更改)
modified: file.txt
没有添加任何更改来提交(使用“git add”和/或“git commit -a”)
然后我提交了更改,但此后它不再考虑文件权限更改,因为即使更改权限级别也+777
显示
在主分支上没有什么可提交的,工作树已清理
为什么不再考虑文件权限?
答案1
Git 只跟踪一位权限:可执行或不可执行。
你没有说出你的意思恰恰“它停止考虑文件权限的改变”,但我最好的猜测是你没有改变可执行权限,所以从 Git 的角度来看,没有变化考虑进去。
答案2
我怀疑您已将 git filemode 设置为 false,但您希望它变为 true。
显示 git 文件模式:
git config --get --local core.filemode
或者
git config --get --global core.filemode
值:
true
:git 跟踪文件所有者的可执行位。
false
:git 没有跟踪它。
参考:https://medium.com/@tahteche/how-git-treats-changes-in-file-permissions-f71874ca239d