【问题标题】:Preserving history when merging Subversion branches合并 Subversion 分支时保留历史记录
【发布时间】:2010-11-02 12:10:27
【问题描述】:

有什么方法可以与 subversion 1.6 进行合并以保留分支的历史记录?

trunk:  r1 --> r2 --------------> r5
branch:          \--> r3 --> r4 /

例如当我在 r4 合并时,历史记录将包含 r3 r4?目前 subversion 将记录一个 merge 提交,其中 r4 和 r2 之间的差异。

【问题讨论】:

  • 阅读 svn 1.5 中引入的增强合并支持。

标签: svn merge


【解决方案1】:

保存分支的历史是什么意思?如果您希望 svn logsvn blame 看到合并,请使用选项 --use-merge-history-g

【讨论】:

  • +1,这就是我的解释。该标志仅作为 svn 1.5 或更高版本中增强合并支持的一部分可用。不确定服务器端是否也必须 >=1.5 ...
  • 刚开始测试它,谢谢!也可以在 Subclipse 和 Subversive 中使用,这非常好。
【解决方案2】:

我相信即使您删除了分支,历史也会被保留。如果您在查看历史记录时使用 TortoiseSVN,则有一个标记为“包括合并修订”的复选框。如果您检查是否会看到 r3 和 r4 在分支上时的日志条目。

【讨论】:

    【解决方案3】:

    单独合并每个分支修订。尽管像每个广泛使用颠覆分支的人一样,您最终可能会陷入合并地狱。你的历史也会很丰富。

    只要不与巧妙的脚本编写冲突,此过程可以在一定程度上实现自动化。

    【讨论】:

    • 一次合并一个文件与合并多个文件没有什么不同。
    【解决方案4】:

    不,如果你想要他们的提交历史,你需要保留分支 r3 和 r4。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-04-17
      • 1970-01-01
      • 1970-01-01
      • 2014-12-17
      • 2015-10-19
      • 2011-04-22
      相关资源
      最近更新 更多