问题:每个git aws.push都会将phpMyAdmin / config.inc.php的权限更改为666,需要为555
概述:我有一个带有PHP / MySQL的Amazon AWS弹性beanstalk站点。在站点文件中,我在文件夹/ phpmyadmin中有phpMyAdmin。我的桌面计算机正在运行Windows 7.我已经完成了以下操作:
任何后续的git aws.push都会将config.inc.php的权限重置为666,所以在运行SSH并执行chmod之前我无法再与phpMyAdmin连接
解决方案失败
然后我继续在另一个文件上执行edit / git add / git commit / git aws.push
结果是/phpmyadmin/config.inc.php已从服务器中删除,而不是仅仅因为推送而被忽略
所需解决方案 AWS服务器上的/phpmyadmin/config.inc.php,当其他文件更新并推送到服务器时,权限保持在755
答案 0 :(得分:0)
试一试
git config --local core.filemode false
阅读此帖子,可能有所帮助:How do I make Git ignore file mode (chmod) changes?
这样做:告诉Git忽略chmod更改,因此阻止添加/提交仅更改了它的权限而不是内容的文件。这实际上意味着你正在使用chmod的文件永远不会被推送到repo(因为它永远不会添加/提交) - repo上的版本将保持不变,除非你在本地实际更改它的内容,在这种情况下Git会看到它并将其视为已准备好添加/提交的已更改文件。
我希望这是有道理的......
每当您更改文件的内容时,您很可能必须使用ssh进入AWS以chmod该文件。服务器端Git挂钩可能会为您解决此问题(自动chmod 755您的配置文件。)
http://git-scm.com/book/en/Customizing-Git-Git-Hooks#Server-Side-Hooks