git status未显示权限更改

6
在 git 仓库中,我改变了文件权限。如果我运行以下命令:
git status

或者

git status -v

我没有看到任何变化,它只显示了。
On branch xxxxx
nothing to commit, working directory clean

但是我已经将文件和文件夹的权限从644更改为777。我该如何告诉git显示权限更改?

( git version 2.2.1 and filemode = true)

4
Git只追踪文件的可执行位,不关心/追踪其他文件权限(且根本不追踪文件夹)。 - AD7six
@Kamiccolo 谢谢你,我不想恢复任何东西,我只是想看到变化发生。 - caramba
@AD7six感谢您的评论。我不明白,请您能否进一步解释一下这是什么意思。我将文件从644更改为777。 - caramba
2个回答

3

您可以启用filemode,Git将跟踪文件权限更改。

git config core.filemode true

1
如果那些信息没有帮助到你,我会更新问题并提供它们。 - caramba
2
我明白了,那么这个答案应该涵盖您需要的内容 https://dev59.com/qHA75IYBdhLWcg3wm6Qj - tombeynon
那个链接确实有帮助,谢谢@tombeynon!(我的问题是重复的) - caramba

0

一些文件系统可能会在检出可执行文件时失去可执行位,或者在检出带有可执行位的非可执行文件时失去可执行位。git-clone [1]或git-init [1]会探测文件系统是否正确处理可执行位,并在需要时自动设置此变量。

然而,仓库可能存在于能够正确处理文件模式的文件系统上,创建时已将此变量设置为true,但稍后可能要从另一个无法处理文件模式的环境中访问(例如通过CIFS挂载导出ext4、使用Git for Windows或Eclipse访问由Cygwin创建的存储库)。这种情况下,可能需要将此变量设置为false。请参阅git-update-index [1]。

默认值为true(当未在配置文件中指定core.filemode时)。

git update-index --chmod= +x

这可能会解决您的问题。它会修改索引或目录缓存,并在更新的文件上设置执行权限。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接