仅在git中更新文件权限?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (37)

刚变成一个some.sh将文件写入可执行文件(chmod 755 ...),权限已更新,但内容未更新。有没有办法承诺将文件放入git,以便将可执行位恢复/设置为克隆/结帐/

如何跟踪新权限已提交给github?

提问于
用户回答回答于

默认情况下,如果更改文件权限,git将更新它们。

如果在修改权限时没有看到任何更改,则可能在git中有一个忽略文件模式的配置。

查看你的项目,在.git文件夹config文件,应该会看到这样的内容:

[core]
    filemode = false

可以将其更改为true在你最喜欢的文本编辑器中,或运行:

git config core.filemode true

然后,应该能够正常提交您的文件。它将只提交权限更改。

用户回答回答于

# git ls-tree HEAD
100644 blob 55c0287d4ef21f15b97eb1f107451b88b479bffe    script.sh

如你所见,该文件具有644权限(忽略100)。我们想把它改为755:

# git update-index --chmod=+x script.sh

提交更改

# git commit -m "Changing file permissions"
[master 77b171e] Changing file permissions
0 files changed, 0 insertions(+), 0 deletions(-)
mode change 100644 => 100755 script.sh

扫码关注云+社区