2013-03-14 75 views
1

我的struggles with git/gitolite continue。我试图通过使用post-receive挂钩来设置部署网站/ webapp的方法。gitolite/git clone不覆盖以前的版本

基本上我有一个远程回购,然后克隆到一个DocumentRoot阿帕奇服务。 我post-receive钩看起来是这样的:

document_root=/path/to/document/root 
echo "deploying to web directory" 
sudo GIT_WORK_TREE=$document_root git checkout -f 
sudo chown -R apache:apache $document_root 

一切的伟大工程 - 第一个部署,但混帐似乎此后忽略任何更改。 如果我add文件然后git push他们去我的远程回购,但不克隆到DocumentRoot并没有给出错误。

任何人都可以想到会发生什么问题吗?

+1

做你尝试了'须藤GIT_WORK_TREE = $ DOCUMENT_ROOT git的结帐-f主人? (指定你想要结账的分行) – VonC 2013-03-14 18:24:43

+0

我不确定你是否知道这一点,但你是男性VonC之间的上帝! – Alex 2013-03-14 18:39:41

回答

2

指定分行明确应更好地工作:

sudo GIT_WORK_TREE=$document_root git checkout -f master 

(即假设你没有推新的提交到master分支,当然)