我一直在阅读有关使用 Subversion 1.5 进行分支/合并的文章,使用优秀且免费的版本控制与 Subversion书。我认为我了解如何使用 Subversion 命令行客户端来执行我最需要的操作,它们是:
使用来自主干的更改更新分支
从分支的工作目录运行:
将分支合并到主干
从主干的工作目录运行:
svn merge --reintegrate http://svn.myurl.com/proj/branches/mybranch
但是,我们使用 TortoiseSVN 1.5 作为 Subversion 的接口。我想知道如何最好地使用 TortoiseSVN 执行这些操作。新对话框在主菜单上提供了三个不同的选项。
- 合并一系列修订
- 重新整合分支
- 合并两棵不同的树
据我所知,TortoiseSVN 总是使用以下语法执行 svn。
svn merge [--dry-run] --force From_URL@revN To_URL@revM PATH
此外,重新集成分支通常会失败,并显示一条消息,指出某些目标尚未合并,因此无法继续,因此我不得不使用选项 #3。
我的问题是:
- 如何使用 TortoiseSVN 1.5 将更改从主干合并到分支?
- 如何使用 TortoiseSVN 1.5 将分支合并到主干,使用和不使用 reintegrate 方法?
- 我应该为每个选项使用上述哪个选项,为什么?
编辑
通过“试运行”测试我发现命令行 Subversion 操作
类似于 TortoiseSVN 中的选项 #1(合并修订范围),只要我将修订范围留空。