post-receive / var / www / html被拒绝

时间:2018-04-07 08:06:16

标签: wordpress git hook git-push git-post-receive

我的用户名(我们称之为my_name)属于Apache组,该组是var/www/html目录,子目录和其中包含的文件的所有者。

在那个目录中,我安装了Wordpress。目录和文件权限设置为0775(是的,我知道文件应该有644,但它现在不是一个因素)。

嗯,我的用户名确实有写权限,因为我可以使用SSH终端或WinSCP创建新文件或目录,以及删除它们。

当我运行裸git存储库的post-receive挂钩时,无论是通过运行脚本还是通过从本地工作存储库推送更改,问题就出现了。
在任何情况下,由于权限被拒绝,后接收挂钩不起作用。真奇怪,我无法理解为什么。

你能帮我吗?

修改 这是ls -alrth ~/git/devsite.git/hooks目录的输出:

-rwxrwxr-x 1 name apache  896 Apr  2 22:41 commit-msg.sample
-rwxrwxr-x 1 name apache  727 Apr  7 09:09 post-receive
-rwxrwxr-x 1 name apache  189 Apr  2 22:41 post-update.sample
-rwxrwxr-x 1 name apache  398 Apr  2 22:41 pre-applypatch.sample
-rwxrwxr-x 1 name apache 1704 Apr  2 22:41 pre-commit.sample
-rwxrwxr-x 1 name apache 1239 Apr  2 22:41 prepare-commit-msg.sample
-rw-rw-r-- 1 name apache 1348 Apr  2 22:41 pre-push.sample
-rwxrwxr-x 1 name apache 4951 Apr  2 22:41 pre-rebase.sample
-rwxrwxr-x 1 name apache 3611 Apr  2 22:41 update.sample

这是收件后脚本:

#!/bin/sh
TARGET=/var/www/html/wp-content
GIT_DIR=/home/name/git/devsite.git

#run 'post-receive' hook
git --work-tree=$TARGET --git-dir=$GIT_DIR checkout -f

1 个答案:

答案 0 :(得分:0)

之后再试一次
cd /path/tp/bare/repo
git config core.sharedRepository true

我之前在“Permissions with Git Post-Receive”中提到过它。

在OP的实例中,post-receive脚本未正确放置:它应位于~/git/devsite.git/hooks,而不是~/git/devsite.git