【问题标题】:Problem merging trunk into an unchanged branch in SVN将主干合并到 SVN 中未更改的分支的问题
【发布时间】:2011-08-09 23:19:34
【问题描述】:

我有一个 SVN 存储库,其中具有以下结构:

 +-trunk
 |   |
 |   +-dir1
 |   |
 |   +-dir2
 | 
 +-branches
 |
 +-tags

我正在尝试对 dir1 进行一些重大更改,因此我为它创建了一个新分支,因为 dir2 非常繁重,并且对于我创建的每个新分支都需要很长时间来检查它。 所以我这样做了:

$ svn copy http://server/svn/project/trunk/dir1 http://server/svn/project/branches/branch1 -m "creating a new branch"
$ svn co http://server/svn/project/branches/branch1

目前没有问题。每当我尝试再次将主干合并到新分支时,就会出现问题。

$ cd branch1
$ svn merge http://server/svn/project/trunk/dir1

当我这样做时,我会得到这样的东西:

C file1
C file2
[many C lines here]

Summary of conflicts:
  Tree conflicts: 114

一个重要的细节是我试图在创建并签出分支后立即合并,因此分支或主干没有任何变化。

那么,我在这里做错了什么?为什么我会收到所有这些树冲突?

提前致谢!

【问题讨论】:

  • 如果您可以更新您的问题并添加有关合并冲突的更多信息,这将有所帮助。打开 file1 并检查 svn 指示的合并冲突。 (例如删除或复制内容)
  • 对存储库的一部分进行分支会使团队中的其他人特别是新团队成员感到困惑。听起来您希望 dir1 和 dir2 成为他们自己的存储库 - 您已经在以这种方式管理它们。

标签: svn merge versioning branching-and-merging tree-conflict


【解决方案1】:

我最终找到了问题。

我的SVN服务器是

因此,当我进行合并时,不是从创建合并的修订版进行合并,而是合并从 1 开始的所有修订版,因此存在很多树冲突。

【讨论】:

    【解决方案2】:

    我们在“带有 Subversion 的版本控制”一书中简要讨论了当您的存储库不支持合并跟踪时如何处理合并。请参阅本书这一部分中的“在不进行合并跟踪的情况下保持分支同步”侧边栏 (http://svnbook.red-bean.com/en/1.7/svn-book.html#svn.branchemerge.basicmerging.stayinsync)

    【讨论】:

      猜你喜欢
      • 2010-12-15
      • 2015-03-28
      • 1970-01-01
      • 2012-06-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多