Svn合并问题

时间:2013-10-10 11:55:33

标签: svn merge

我有一个下一个存储库

/
 /branches
 /tags
 /trunk - unfortunately all source code for one project goes here

现在我需要开始一个新项目,但我不想在主干中创建它,因为它会导致混合两个项目。

我想在存储库的根目录中创建一个新文件夹

/newp - for example

但我需要来自旧项目的一个子项目:/ trunk / folder / folder1 folder1包含很多文件

我想创建一个文件夹/ newp / folder1并将/ trunk / folder / folder1合并到/ newp / folder1,当我这样做时,只有/ trunk / folder / folder1的子文件夹合并到/ newp / folder1。文件被忽略。为什么?我需要能够以两种方式合并数据。完成它的最佳方法是什么?

请告诉我这项任务是否不易理解

2 个答案:

答案 0 :(得分:1)

首先,术语"合并"在SVN中只意味着一件事,我认为"合并"不是你真正想要的。我不知道为什么只在/ newp / folder1中创建文件夹,而文件不是。可能是你在做这个动作时选择了错误的选项,但我也不知道你做了什么动作,因为你还没有提到过。

您应该做的是external定义。在/newp中创建一个外部文件夹名称folder1,指向/trunk/folder/folder1。就是这样。在进行外部操作之前,请确保folder1不存在。

由于外部与工作副本位于同一个存储库中,因此您将只有一个提交操作(非常方便)。如果外部存在于另一个存储库中,则必须在两个单独的操作中提交工作副本和外部。

我还建议您将branches / tags / trunk文件夹移动到名为oldp的文件夹中,以便您拥有更好的项目层次结构。

答案 1 :(得分:0)

您可能需要的是将您需要的汇编作为第三方添加到该项目中。 或者创建分支并为项目添加文件夹。 如果trunk包含几个正在开发的项目和功能,那就不错了。

你不能分支干线的一部分,只能干掉一切。 这很好,因为在合并到主干之前,您应该成功构建所有源,而不仅仅是其中的一部分。 不要在中继之间共享项目,将来很难与它们一起工作。