我试图得到一个相当简单的部署过程中会使用Gitolite节点的应用程序。 我有Gitolite设置和我的服务器上的工作,我能推到它的罚款。
Gitolite被用户称为下运行git
,我已经设置一个node
,我很希望用它来运行的节点应用的用户。
我的计划是推动节点应用Gitolite,然后用后期收到钩子脚本到应用程序文件移动到目录中的应用程序生命,在这种情况下, /var/local/node-apps/my-node-app/
。 我创建这样的节点app文件夹:
sudo mkdir -p /var/local/node-apps/my-node-app
sudo chown node /var/local/node-apps/my-node-app
问题是,我是一个Unix的小白,我没有得到我的头一轮的文件/文件夹的权限和wotnot。
/var/local/node-apps
(和/var/local/node-apps/my-node-app
)由所属node
用户,所以当git
用户试图检出到这个位置,我得到了一堆许可被拒绝错误。 我使用的命令后得到的是:
GIT_WORK_TREE=/var/local/node-apps/my-node-app git checkout -f
我得到这样的错误:
remote: error: git checkout-index: unable to create file XXXX (Permission denied)
remote: fatal: cannot create directory at 'XXXX': Permission denied
什么是解决它的最好方法? 我需要授予git
用户密码的sudo的权利, su
为node
的用户? 或者可以这样莫名其妙地通过改变组和文件夹的权限固定的吗? 或一个不同的方法完全? 我迷路了!
谢谢!