我想用Mercurial实现以下工作流程:
使用默认分支中的7.4版
在7.1中找到错误(7.2使用不同的数据库布局,因此我想基于7.1快速修复错误),分支或克隆到错误修复程序。
发布7.1.1
现在我的问题是我想将错误修正更改合并到7.2,直到当前开发(7.4)。我只找到了与current合并的方法,但是在没有7.1.1修复的情况下留下了7.2和7.3。 我该如何设置我的回购?
答案 0 :(得分:2)
典型的布局是您拥有开发新功能的默认分支。
从默认分支开始,您可以定期分支各个主要版本分支(因此在您的情况下为7.1,7.2,7.3 ......)。
如果您现在遇到错误,请将其修复到存在的最旧版本,因此7.1分支中修复了影响7.1.x版本的错误。然后在每个其他分支中合并7.1分支,它也需要修复,因此可能是7.2,7.3,7.4和默认(=开发)分支。由于所有分支都有一个比最旧的分支更新的基础(并且你在那里修复),所以不会合并任何旧东西(你的合并工具应该认识到这一点)。
如果您不想合并,可以使用移植来简单地将修复复制到其他分支。
答案 1 :(得分:1)
一个选项,使用hg graft
。像合并一样工作,但会保持分支机构的开放。