2011-11-13 163 views
1

我在我的web服务器上使用了一个裸露的远程存储库,后接收钩会自动将我的文件推送到public_html目录中。Git CHMOD后接收挂钩

问题是,我正在使用codeigniter,index.php文件必须是chmod 755.我在服务器上用filezilla更改了它,但是在每次push后index.php文件都设置为644,结果在内部服务器错误。

出现这种情况,即使在index.php没有改变或藏匿..

我搜索了一个解决方案,但至今没有运气..可能有人帮助我? 我正在使用Tower GIT客户端提交/推送。

谢谢

回答

1

Git存储可执行位以及存储库中的每个文件。如果它认为该文件有模式644,那么你可能需要更改权限的库本身,将其设定在你的工作副本,提交和推:

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

谢谢,我更近了一步。 。尽管chmod + x index.php设置了775上的文件,但我需要755.奇怪的是,当我将它改为755时,git给出了一个错误,指出它没有权限。 – 24creative

+0

Git不存储完整模式,只是一个可执行的位。如果它对于你而言是755而不是775,你应该将它设置在你的部署脚本中(这听起来像是你的post-receive钩子的一部分)。 – Avi