GIT_WORK_TREE不仅更新1个文件

时间:2011-10-13 16:39:09

标签: git git-workflow

我在服务器上设置了两个裸git存储库,文件路径如下:

/git/project.git/
/git/project2.git /

然后我添加了两个分支dev和live。然后我为每个项目添加了以下post-receive挂钩

`    
#!/bin/sh
while read oldrev newrev refname
 do
  echo "STARTING [$oldrev $newrev $refname]"
   if [ "$refname" == 'refs/heads/dev' ]
    then
     GIT_WORK_TREE=/var/www/vhosts/devwebsite.com/httpdocs/ git checkout -f
   elif [ "$refname" == 'refs/heads/live' ]
    then
     GIT_WORK_TREE=/var/www/vhosts/livewebsite.com/httpdocs/ git checkout -f
    fi
  done`

这适用于1个项目但不适用于另一个项目。在第二个项目中,它似乎只与我推送的第一个文件一起使用,这恰好是一个.gitignore文件。

因此,简而言之,这个文件是我推送时唯一会更新的文件。

感谢你提前给予任何帮助。

0 个答案:

没有答案
相关问题