svn:用分支替换主干

标签 svn version-control

使 subversion 存储库的分支之一成为新主干的最佳方法是什么?

整个系统进行了一次重大的改写:东西已经被移动、改写、替换、删除、重命名等。改写的代码已经过测试,准备替换旧的主干。

基本上,旧的主线(Trunk 5)被标记并且将在这里结束。重写后的分支(Branch 6)将成为新的主线(Trunk 7):

中继(1) --> 中继(2) --> 中继(5) --> × +--> 新中继(7)
\\|
fork 合并???
\\|
+--> 分支(3) --> 分支(4) --> 分支(6) --+

来自旧“主干”的所有正在进行的更改都已合并到“重写分支”中

我该怎么做?

最佳答案

使用 svn move将旧主干的内容移到其他地方,然后将分支重命名为主干。

请注意,在 svn 中复制和移动的工作方式类似于文件操作。您可以使用它们在您的存储库中移动/复制内容,并且这些更改也是版本化的。将“移动”视为“复制+删除”。

[编辑] Nilbus 刚刚通知我,您在使用 svn move 时会遇到合并冲突.

我仍然认为这是正确的做法。这会导致冲突,但如果您仔细合并,您可能不会丢失任何数据。如果这让您感到困扰,请使用更好的 VCS,例如 MercurialGit .

关于svn:用分支替换主干,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/331388/

相关文章:

git - 你什么时候使用 Git rebase 而不是 Git merge?

svn - 如何使用 subversion 管理生产/测试/开发配置信息?

svn - Jenkins 与 SVN 发布者完成成功但没有发布

javascript - 如何使用 Bower 安装私有(private) SVN 存储库?

version-control - 使用 TortoiseHg,我如何从 checkin /推送中排除一个文件,但仍然可以更新它?

git - 将大型 SVN 存储库迁移到 git

svn - 如何设置 SVN 进行远程访问

svn - 在 svnsync 中处理大文件

version-control - 什么是源代码控制和配置管理最佳实践?

visual-studio-2010 - 更轻松的 TFS 构建定义更新