【问题标题】:Tortoisesvn merge two branches in another oneTortoisesvn 将两个分支合并到另一个分支中
【发布时间】:2014-01-13 14:34:36
【问题描述】:

我也有这些目录:

  • 分支机构
  • 标签
  • 主干

主干包含:

  • common.txt 内容为:'trunk'
  • trunkFile.txt

我还有两个分支 - A(来自树干),B(来自树干)

分支 A 修改:

-common.txt:
 'trunk
  (+) A'
- add aFile.txt

B 分支修改:

-common.txt:
 'trunk
  (+) B'
- add bFile.txt

所有,我需要的是再创建一个早午餐 (AB),其中将包含来自分支 A 和分支 B 的所有更改。我的意思是:

分支 AB 包含:

- common.txt:
  'trunk
   A
   B'
- trunkFile
- aFile
- bFile

我做了什么:我从主干创建了一个新的分支 AB。然后在 AB 上进行合并(合并两个不同的树),在 FROM 中我选择了 branch A,在 TO 中我选择了 branch B

结果很糟糕:

  • common.txt 中的奇怪冲突。但这还不算太糟糕,下一点,因为冲突可以解决..
  • aFile 上的树冲突。乌龟说,这个文件被删除了(!),结果这个文件不在结果分支 AB..

您可能会说,我选择合并两个不同的树是错误的,这是为了合并一系列修订。但如果是这样,我如何使用合并两棵不同的树,除了将分支重新整合到树干。 谢谢!

【问题讨论】:

  • 从我的角度来看,将分支 A 和 B 重新整合到主干中,然后从主干中创建一个新的分支将是最干净的方法。你不能走这条路吗?
  • 也许,我不确定.. 我的任务是在这个例子中讲述乌龟树合并(合并两棵不同的树):我们有来自树干的 4 个分支(A、B、C , D)。如何从分支 A、B、D 制作一个早午餐 ABD。如何从 ABD 制作一个新分支,然后将分支 C 的所有更改应用到它。在所有这些操作期间,mergeinfo 会发生什么。

标签: svn merge tortoisesvn branching-and-merging


【解决方案1】:

这可以通过两种方式实现

第一个 将分支 A 与主干合并(重新整合一个分支),然后将分支 B 与主干合并,然后从主干创建一个分支 AB

假设您已经创建了一个分支 AB 没有将分支 A 和分支 B 合并到主干。使用合并两个不同的树选项将分支 A 合并到分支 AB,在 From URL 中,您应该指定分支 AB URL,在 To URL 上,您应该指定分支 A URL,然后使用合并两个不同的树选项将分支 B 合并到分支 AB 并在From URL 您应该指定分支 AB URL,在 To URL 上您应该指定分支 B URL

【讨论】:

  • 是的,我需要做这个操作,不需要将A和B重新整合到主干!让我们看看你描述的第二种方式。我已经按照您说的做了,但是当我将 B 合并到 AB 时,乌龟放弃了,需要删除 aFile(从 A 到 AB 合并)!而B到AB合并的结果是AB中存在bFile,但是aFile被删除了..
猜你喜欢
  • 2013-11-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-11-13
  • 2010-12-15
  • 2016-11-07
  • 1970-01-01
相关资源
最近更新 更多