【问题标题】:Windows changing git executable bit when cloning克隆时 Windows 更改 git 可执行位
【发布时间】:2019-03-15 05:11:53
【问题描述】:

每当我克隆一个 git 存储库时,Windows 都会更改我文件上的可执行位。它们从 10755 更改为 10644。我可以通过设置 filemode = false 让 git 忽略它。但是,当我提交本地分支并将其推送到远程分支时,远程 repo 上文件的可执行位也会更改。这会通知团队该文件不再可执行。

示例:

Git 说“模式更改 10755 => 10644”

团队中有很多 Windows 用户没有这个问题,而且我似乎是唯一一个遇到这个问题的人。有什么想法可以解决这个问题,这样我在推送本地分支时就不会推送模式更改?

我使用的是 Windows 7(64 位)。我拥有工作区文件夹的管理员权限和完全控制权限。

【问题讨论】:

  • 您使用的是哪个 Git 客户端?用于 Windows 的 Git?赛格温?您从哪个 GUI 发布屏幕截图?

标签: windows git


【解决方案1】:

正如我mentioned here,如果您必须添加可执行文件(这不是最佳做法),请将其添加回您的 repo 并设置 +x 位。

Git 2.9.1+ 可以做到这一点

git add --chmod=+x -- yourFile

那么提交应该保留执行位。

【讨论】:

  • 感谢您的回复,您知道为什么会这样吗?我很惊讶我团队中的其他 Windows 用户没有这个,但我有。我尝试更改文件夹权限并添加组“所有人”以获得完全控制权限(仅作为测试),但仍然无法使其正常工作。我确实打算保留它,因为这些文件一开始就不应该是可执行的。
  • @EricS 不确定:当您使用 chmod、=+x 添加并推送时,问题是否仍然存在(在远程仓库上)?重新生成二进制文件后是否必须添加 chmod=+x 时间?
猜你喜欢
  • 2016-10-25
  • 2021-03-03
  • 2011-12-24
  • 2016-02-05
  • 1970-01-01
  • 2016-03-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多