通过 ssh,git-checkout 进入用户不拥有的目录:“权限被拒绝”

通过 ssh,git-checkout 进入用户不拥有的目录:“权限被拒绝”

使用git push server我通过 ssh 推送到远程裸 git 存储库。服务器上的 git 存储库有一个 post-receive 钩子,它git checkout -f/var/www/vhosts/domain.com/preview(工作树)中运行以进行部署。

我明白了

错误:git checkout-index:无法创建文件 README(权限被拒绝)

[ETC...]

每当钩子被执行时。

这对我来说是有意义的,因为 ssh 用户“bob”不拥有目录“preview”,所以他没有写权限。

root@www:~# ls -lh /var/www/vhosts/domain.com/ | grep preview

drwxr-x--- 5 sumo psaserv 4.0K Mar 29 15:38 preview

我是否应该将“bob”添加到“psaserv”组并将目录 chmod 775(这不起作用),或者这是完全错误的方向?唯一的选择是使用“sumo”而不是“bob”连接到服务器吗?

我阅读了有关 unix 权限的资料,但仍然无法找到解决这个问题的正确方法。任何指点都非常感谢!

答案1

将 bob 添加到 psaserv 组并 chmod -R g+w /var/www/vhosts/domain.com/ 应该可以为您进行排序。

相关内容