在git push或merge之后,如何更新多个遥控器?

时间:2014-07-16 14:42:15

标签: git automation hook gitlab

这可能是一个git hook问题,还有一点git工作流,应该怎么做。这就是我们现在正在做的事情:

  1. 开发人员在开发中有应用程序的本地存储库(prod,dev,test),在更改代码和正确测试之后,他们推送或合并到安装在托管VPS上的gitlab的中央存储库。

  2. 除此之外,我们有几个托管该应用程序的远程服务器,其中git clite是来自gitlab的。

  3. 我们在每个执行脚本pull.sh的远程服务器上使用git repo,这些服务器具有每个分支的命令行,因此我们使用gitlab central repo的更改来更新服务器上的本地存储库: / p>

    git checkout prod
    git fetch origin prod
    git reset --hard origin/prod
    git pull
    
  4. 所以这就是问题所在。当开发人员将更改推送或合并到gitlab central repo时,我们如何自动更新每个远程服务器上的repo?现在我们必须在每个远程服务器上SSH并手动启动脚本。当然我们可以使用cron,但我对git hooks更感兴趣。

    我们是否必须更改逻辑,以便在合并/推送gitlab服务器之后接收挂钩并且我们推送到远程服务器?或者我们可以通过接收后脚本中的SSH命令在远程服务器上远程执行pull.sh吗?

0 个答案:

没有答案