如何使用SmartSVN导入和合并2个目录?

时间:2012-01-20 10:39:17

标签: svn version-control smartsvn svn-merge

我有这种情况:

  • 我们有一个网站,其代码不在SVN上托管。
  • 我在这个网站上做了更改。
  • 由客户(不是我们的团队成员)雇用的自由职业者并行进行了更改;我们没有合作的可能性。
  • 因此,我们在硬盘上有2个文件夹,并行修改了同一网站的2个版本,如SVN中的“trunk”和“branch”。

问题是:是否可以将两个版本的网站导入SVN存储库,一个作为trunk,一个作为分支,并从SVN差异列表中获取编辑已更改的文件并解决冲突?它看起来像专门为解决这些问题而创建的SVN,但我无法调查如何解决它。

  • 我在trunk中导入了一个版本。
  • 我在分支机构中导入了另一个版本。
  • 我在SmartSVN中选择了“merge”,但是所有修改过的文件都被识别为“树冲突”而不是“文件修改”,所以我不能使用内置的冲突解决工具,因为它写道“文件不是修改“,但同时”文件处于树冲突“状态。

对于测试,我甚至以这样的方式制作:我在分支和主干中完全放置相同的文件,当我点击“合并”时,所有文件都标记为“树冲突”,即使我知道它们完全相同, 一世。即它给出了假的冲突报告。

2 个答案:

答案 0 :(得分:1)

您是否还有预编辑的副本?如果是这样,使用它来创建主干,然后在那一点采取分支。然后在两个单独的工作副本中,一个来自主干,一个来自分支,复制您的更改(主干)和自由职业者的更改(分支)并提交两者。然后,您可以使用SVN工具合并这两者。

但是,在两个目录上使用BeyondCompare之类的工具可能会更容易......

答案 1 :(得分:1)

您不能在trunk和branch中导入,但首先在trunk中导入公共基本版本,创建分支,在中断提交更改1,在trunk中提交其他更改。现在合并应该有效。如果在master和branch中创建文件,则合并时会发生树冲突。