Tortoise SVN:如何在将branchfix从分支合并到trunk

时间:2017-08-30 15:11:57

标签: svn version-control merge tortoisesvn tree-conflict

我在新的空SVN存储库中重新创建了我的问题:

修订版1:

  • /中继/
  • /支链/

操作:添加文本文件" init.txt"分支" trunk"

修订版2:

  • /trunk/init.txt
  • /支链/

操作:根据主干创建功能分支

修订版3:

  • /trunk/init.txt
  • /branches/featureA/init.txt

操作:为分支添加不稳定的功能

修订版4:

  • /trunk/init.txt
  • /branches/featureA/init.txt
  • /branches/featureA/unstable.txt

操作:通过添加文件" bugfix.conf"

修复功能分支中的错误

修订版5:

  • /trunk/init.txt
  • /branches/featureA/init.txt
  • /branches/featureA/unstable.txt
  • /branches/featureA/bugfix.conf

操作:merge" bugfix.conf"回到主干但跳过" unstable.txt"

Screenshot of first merge dialog page

Screenshot of second merge dialog page

修订版6:

  • / trunk / [svn:mergeinfo = / branches / featureA:3,5]
  • /trunk/init.txt
  • /trunk/bugfix.conf
  • / branches / [no svn:mergeinfo]
  • /branches/featureA/init.txt
  • /branches/featureA/unstable.txt
  • /branches/featureA/bugfix.conf

操作:继续在文件" init.txt"躯干

修订版7:

  • / trunk / [svn:mergeinfo = / branches / featureA:3,5]
  • /trunk/init.txt(新内容)
  • /trunk/bugfix.conf
  • / branches / [no svn:mergeinfo]
  • /branches/featureA/init.txt( 内容)
  • /branches/featureA/unstable.txt
  • /branches/featureA/bugfix.conf

操作:尝试将功能分支与主干

同步

预期结果: 修订版8:

  • / trunk / [svn:mergeinfo = / branches / featureA:4]
  • /trunk/init.txt(新内容)
  • /trunk/bugfix.conf
  • / branches / [svn:mergeinfo = / trunk:6]
  • /branches/featureA/init.txt( 内容)
  • /branches/featureA/bugfix.conf

首次尝试

在功能分支上选择"合并一系列修订 - >所有修订"

错误:"只有先将版本3到7从/ branches / featureA合并到reintegrate源时才能使用重新整合,但情况并非如此:trunk缺少范围/支链/ featureA:4"

为什么SVN需要修订版4才能合并?为稳定和不稳定设置一个单独的分支的重点是保持一些提交远离另一个分支。更改(添加文件unstable.txt)完全独立于其他更改。

第二次尝试

在功能分支上选择"合并一系列修订 - >修订2-7" (我可以手动选择的所有修订)

错误:"树冲突:上次合并操作尝试添加文件' bugfix.txt',但文件在工作副本中受阻。 #34;

TortoiseSVN允许我选择版本6进行合并,即使合并此更改没有任何意义,因为它已经包含在目标分支中,因为它最初在修订版5中提交。为什么TortoiseSVN不会自动处理?在主干和不支持的功能分支之间进行挑选/合并单一提交吗?

0 个答案:

没有答案