切换到hg-flow模型:如何重新设置提交和分支

时间:2014-12-09 11:49:55

标签: git mercurial workflow branch rebase

我很久以前就开始了一个小项目,并使用mercurial作为RCS。 所有提交都在default分支中完成,除了当前正在开发的一个功能分支,在项目的单独克隆中。 该项目变得非常重要,我想切换到Driessen's model

我已经能够使用

将所有提交从default:rev1改为develop
$ # Starting in the default branch
$ hg up -r 0
$ hg branch develop
$ hg ci -m 'created the develop branch'
$ hg rebase --source 1

我的问题是我无法在不丢失分支信息的情况下将feature/new-feature分支导入develop分支。 我非常有信心有足够的方法去做,但我找不到它。

有什么建议吗?

提前致谢。

2 个答案:

答案 0 :(得分:1)

尝试使用hgflow。这就像Mercurial的git-flow https://bitbucket.org/yinwm/hgflow/wiki/UserManual

答案 1 :(得分:0)

好的,这就是我来的解决方法。 也许有一个合适的解决方案。 无论如何,这都有效。

$ # Create branch develop at rev 0.
$ hg up -r 0
$ hg branch develop
$ hg ci -m 'creating branch develop'
$ 
$ # Rebase all commits into the develop branch.
$ # This will merge the feature/new-feature branch into develop.
$ hg rebase -s 1
$ 
$ # Re-create the feature/new-feature branch from its original parent.
$ hg up -r 357
$ hg branch feature/new-feature
$ hg ci -m 'created branch feature/new-feature'
$ 
$ # Move commits that belong to this branch from develop from newly re-created
$ # branch.
$ hg rebase --base 358 --dest tip