与openshift相比,这更像是一个与git相关的问题。
当我使用git将文件推送到git服务器时,我看到我的perl index.cgi文件的文件权限在我的openshift存储库中被更改为700。
因此,每次执行推送操作时,我都必须使用ssh登录到服务器,并在$OPENSHIFT_REPO_DIR中执行chmod a+x index.cgi以将其更改为755。
我在git文档中看到可以添加一个钩子,并且我尝试使用以下命令更新钩子目录中的更新后脚本
exec chmod a+x $OPENSHIFT_DATA_DIR/index.cgi然而,这似乎并没有奏效。
你能告诉我我哪里做错了吗?
如何确保不会在每次推送文件时都更改chmod?
如何通过git安装脚本执行shell命令(我不知道什么是安装脚本,我想它指的是钩子)
基于下面的建议,我认为我需要将钩子添加到服务器,所以我尝试了一下,但我得到了一个错误
$ git add .git/hooks/post-update error: Invalid path '.git/hooks/post-update' error: unable to add .git/hooks/post-update to index
因此,我尝试了一些使用action hooks的选项,方法是在本地的.openshift/action_hooks目录中放置"start“。
我尝试使用的命令是exec chmod a+x register.cgi,甚至是chmod a+x register.cgi
不太走运。任何输入。我将把它作为一个针对actionhooks的单独Q提出来。
发布于 2014-10-28 15:40:57
这是一个与git相关的问题,而不是openshift。
实际上,它更多地与openshift有关,而不是Git:Git only records 644 and 755 permissions。
但是管理结帐(并更新工作树)的目标系统将根据default (在您的例子中可能是077)设置权限。
确保默认umask为022。
关于钩子,检查它的名称('post-update',没有扩展名)和权限(它必须是可执行的,755会很有用)
发布于 2014-10-28 15:54:01
在这种情况下带来权威的gitweb文件夹。
gitweb/
drwxr-xr-x 3根目录4096 Sep 25 12:01。
drwxr-xr-x 225根目录12288 Oct 27 20:10 ..
-rwxr-xr-x 1根251319 9月23 04:36 gitweb.cgi
lrwxrwxrwx 1 root root 10 Sep 23 04:36 index.cgi -> gitweb.cgi
drwxr-xr-x 2根目录4096 Sep 25 12:01 static
https://stackoverflow.com/questions/26602640
复制相似问题