GIT工作流程 - 使用开发和登台环境

时间:2014-01-28 13:51:56

标签: git

我是git的新手,一直在寻找和一些工作流程。我发现this并且非常喜欢它,但我确实有一些问题。

我在主服务器上设置了一个post post hook,它使用所有最新的更改来更新生产服务器,但是,我想知道如何处理dev和/或staging环境。

是否有办法根据分支更改更新服务器上的子域(即:dev.mydomain.com,staging.mydomain.com),而无需为一个项目维护多个存储库?如果我推送并且只更改了开发分支,那么更新dev.mydomain.com会很棒。如果我推动更改以发布分支,则理想情况下staging.mydomain.com将更新。

另外 - 我没有使用github。我们在自己的CentOS服务器上使用WHM / CPanel进行此设置,如果有任何重要的话。

3 个答案:

答案 0 :(得分:2)

我不明白为什么你不能这样做。您应该能够获取刚刚推送的分支的名称(Writing a git post-receive hook to deal with a specific branch),然后从shell脚本进行部署。

答案 1 :(得分:1)

一种理智的方法是将存储库克隆到每个子域的webdir,检查那里的相应分支,并配置你的git钩子,以便在每次推送时更新这些存储库。

答案 2 :(得分:1)

Git本身只提供了Repository结构以及Developers如何协同工作。对于不同的阶段,您应该添加克隆的项目,因为它们应该分歧。维护它们是一项重要任务,您可以手动执行此操作或编写一些Bash脚本,甚至是一些CLI程序。也许您正在使用的Panel确实提供了一些API调用。 GitLab for Example有一个API来自动执行这种Stuff。

在那之后,重要的是使用Cron作业或接口进行定时。 :)