Git CHMOD 接收后 Hook

标签 git hook chmod git-checkout git-post-receive

我在我的网络服务器上使用一个裸远程存储库,它带有一个接收后 Hook ,它会自动将我的文件推送到 public_html 目录中。

问题是,我使用的是 codeigniter,index.php 文件必须是 chmod 755。我在服务器上用 filezilla 更改了它,但每次推送后 index.php 文件都设置为 644,这会导致内部服务器错误。

即使 index.php 没有更改或 stash ,也会发生这种情况。

我已经在寻找解决方案,但到目前为止还没有成功。有人可以帮我解决这个问题吗? 顺便说一句,我正在使用 Tower GIT 客户端提交/推送。

谢谢

最佳答案

Git 将可执行位与存储库中的每个文件一起存储。如果它认为文件的模式为 644,那么您可能需要更改存储库本身的权限,方法是在您的工作副本中设置它们、提交和推送:

chmod +x index.php
git add index.php
git commit

关于Git CHMOD 接收后 Hook ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8111804/

相关文章:

linux - 试图从 git repo 中删除一个大文件夹但花费的时间太长

node.js - npm install 忽略自己的 ssh+git 存储库

git - 如何为Windows安装Git Shell?

java - 什么是 "hook"以及如何用 Java 编写一个?以及如何与内核通信以了解用户按下的键/向操作系统注册

bash - 为什么我的 setuid root bash shell 脚本不起作用?

Git 撤消命令 : "git reset --hard"

c# - CLR 探查器 : issue in using DefineAssemblyRef

mysql - 如何使用 chmod 作为 mysql 数据类型

php - 如何停止使用 chmod 或 .htaccess 编辑父目录的 PHP 文件?

java - 是否可以为maven + jenkins打包过程编写 "local"脚本/hook?