Mercurial如何实现prod-test-dev

时间:2015-01-07 09:41:41

标签: mercurial

我想遵循prod-test-dev的结构。

在git环境中,我会有一个包含3个分支的项目文件夹(prod-branch,test-branch,dev-branch)。

如何通过mercurial实现这一目标?据我所知,你需要有3个(!)不同的项目。代表生产分支的项目,另一个代表开发等。

这似乎效率低下。还有另一种方法来实现这一目标吗?可能我还没有真正理解分支。

使用pic进行更新,显示我在Mercurial中创建这3个分支时的流程: enter image description here

2 个答案:

答案 0 :(得分:2)

基本prod-test-dev流程如下所示:

创建新存储库(或从现有存储库开始)。首先,您必须使用以下命令创建三个命名分支:

hg branch prod
hg commit -m"prod branch"
hg branch test
hg commit -m"test branch"
hg branch dev
hg commit -m"dev branch"

完成后,您的存储库将如下所示: initialized repository with prod test and dev branches

对于开发过程,您可以将存储库更新到dev分支并在那里进行一些开发。在您将所有更改提交到dev并准备将该代码发布到测试后,请执行以下updatetest分支选择dev分支并执行merge with localdev分支)。在test分支中修复代码,并在完成后将testdev分支(updatedev的更改合并回test,选择{{1}分支 - merge with local)。重复循环,直到您准备好生产。然后更新到prod分支,选择testmerge with local - 您将在prod分支中准备好您的生产代码。

在一个开发测试生产周期之后,您的存储库将如下所示:

Repository after dev - test - prod cycle

您也不应该关闭这三个分支中的任何一个,因为它们代表了您的工作流程的基础。

答案 1 :(得分:1)

正如Lasse所说 - 只需在正确的方式(tm)中使用Mercurial分支(更好地命名分支)

此处我的 2分支存储库的日志与单向同步

Log of two branches