SVN 将一个 Repo 的分支合并到另一个 Repo 的主干中

标签 svn tortoisesvn merge

我有两个位于不同服务器上的存储库,分别称为 repo-1 和 repo-2。

开始两个“树干”是平等的:

repo-1/trunk == repo-2/trunk

与此同时,正在向 repo-1/trunk 提交更改,我正在致力于并向 repo-2/trunk 提交更改。

现在我需要将 repo-1/trunk 的更改合并到 repo-2/trunk。

我以为我会将 repo-1/trunk 复制到 repo-2/tags/r1_20090224,然后将该标签合并到我的 repo-2/trunk 本地工作副本(即 c:\dev\repo2-trunk)中。

关于如何做到这一点的任何建议?我正在尝试使用 TortoiseSVN 并执行“合并两个不同的树”,我使用了以下设置:

来自:repo-2/trunk
至:repo-2/tags/r1_20090224
工作副本:c:\dev\repo2-trunk

我也尝试交换“from”和“to”……但没有运气。通过尝试这两个合并选项中的任何一个,我最终都会得到以下结果:

  • 如果我从主干合并到标签(到我的 repo-2/trunk 的本地副本),我会丢失主干更改并获得标签更改。
  • 如果我从标签合并到主干(合并到我的 repo-2/trunk 的本地副本),我会丢失我的标签更改并保留我的主干更改。

  • 有什么建议可以做到这一点?

    最佳答案

    首先找出树木相同的修订版。然后将该修订版合并到 repo-1 存储库的 HEAD 到您的 repo-2 工作副本。

    使用命令行客户端与此类似,如果您想合并 r123 和 r456 之间的更改

    svn merge http://domain.tld/repos1@123 http://domain.tld/repos1@456 repos2-workingcopy
    

    关于SVN 将一个 Repo 的分支合并到另一个 Repo 的主干中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/583260/

    相关文章:

    windows - 设置 Tortoise SVN Windows 7 热键

    c++ - 将多个txt文件合并为一个

    svn - 使用 TortoiseSVN 的同一 SVN 服务器的备用 IP 地址

    svn - 在 TortoiseSVN 中撤消修复移动

    java - Maven、Subversion、Javadocs

    ubuntu - 在 Ubuntu 12.04 中下载谷歌代码

    使用具有重叠列名的 Pandas 连接多个数据框?

    tfs - 我的 TFS 没有提示合并/代码差异,只是覆盖?有TFS设置吗?

    svn - 在 SVN 更新期间忽略文件夹

    svn - 从 BDB SVN 存储库恢复源代码