乌龟SVN-将主干合并到分支树冲突
我们在SVN1.8上,我也在使用乌龟SVN1.8 主代码位于/project/trunk上。我将做一个大的更改,所以我在乌龟SVN-将主干合并到分支树冲突,svn,merge,tortoisesvn,tree-conflict,Svn,Merge,Tortoisesvn,Tree Conflict,我们在SVN1.8上,我也在使用乌龟SVN1.8 主代码位于/project/trunk上。我将做一个大的更改,所以我在/project/branchs/x中创建了一个分支,它是/project/trunk的副本 作为更改的一部分,我需要重新安排目录结构以处理多个客户端。当前,主干的外观如下所示: /project/trunk/process/xyz/file1.xml /project/trunk/process/xyz/file2.xml 我想改变结构,使其更像: /project/tru
/project/branchs/x
中创建了一个分支,它是/project/trunk
的副本
作为更改的一部分,我需要重新安排目录结构以处理多个客户端。当前,主干的外观如下所示:
/project/trunk/process/xyz/file1.xml
/project/trunk/process/xyz/file2.xml
我想改变结构,使其更像:
/project/trunk/process/xyz/client1/file1.xml
/project/trunk/process/xyz/client1/file2.xml
我尝试右键拖动到新文件夹中,并使用上下文菜单将SVN移动到此处。当我在分支中工作时,我需要更改主干中的file1.xml以解决生产问题。我希望在我的分支中进行更改,但当我尝试在Tortoise SVN中进行合并时,它出现了冲突,因为缺少本地文件
这些选项只是给了我解决、推迟或中止的选项。将/trunk/process/xyz/file1.xml
更改为/trunk/process/xyz/client1/file1.xml
的最佳方式是什么
我是SVN的新手,所以请友善:)好吧,你是SVN中“重构地狱”的受害者——这仍然是一个大问题
你至少有两个选择
- 合并(为了消除树冲突)不是树(整个
合并到/trunk
),而是单个文件,在您的案例中是/branchs/x
。file1.xml
- 在分支的WC中,为单个文件选择“合并”,而不是父文件夹,并将主干的
作为合并源file1.xml
- 对存在树冲突的所有(移动的)文件重复这些合并
- 在分支的WC中,为单个文件选择“合并”,而不是父文件夹,并将主干的
- 迁移到Mercurial至少用于重构
- (安装Mercurial/TortoiseHG/)
- 启用(与THG 3.0捆绑)hgsubversion扩展
- 将SVN回购克隆为Mercurial回购
- 重构、合并、提交到本地HG
- (因为合并集不能推回Subversion)将Mercurial repo的技巧归档到未版本的文件中,该文件必须替换Subversion存储库的WC并提交此更改状态(在Subversion中的此版本中,您将获得中断的历史记录)
- 返回使用Subversion存储库和重构代码