Mercurial如何实现prod-test-dev

Mercurial how to achieve prod-test-dev

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

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

这是如何用 Mercurial 实现的?据我了解,您需要拥有 3(!) 个不同的项目。一个项目代表生产分支,另一个项目代表开发等

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

更新图片显示我在 Mercurial 中创建这 3 个分支时的流程:

正如 Lasse 指出的那样 - 只需在 The Right Way (tm)

中使用 Mercurial 分支(命名分支更好)

此处 my 2 分支存储库的日志 single-direction sync

基本 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"

完成后,您的存储库将如下所示:

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

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

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