如何将SVN中的分支移动到主干(trunk)?

3

如何将一个SVN分支移动到主干(trunk)?

我面临的问题是,如果我在SVN中执行move命令(命令行或Eclipse中),我只能将分支文件夹移动到主干中,导致主干中只有该文件夹。但我想要将该分支的所有内容都放入主干中。

例如:

/branch/mybranch/project1,project2,project3

将被

/trunk/project1,project2,project3

并非

/trunk/mybranch/project1,project2,project3

当然,使用project1,project2和project3作为三个不同的项目……
如何实现呢?Tortoise是否有帮助?还是只能逐个移动每个项目?
1个回答

5

将当前主干移动到其他位置(/branch/oldtrunk),然后将/branch/mybranch移动到/trunk。如果您想要的是用分支替换当前主干,可以这样做:

使用命令行客户端,可以执行以下操作:

svn mv http://path/to/repo/trunk http://path/to/repo/branch/oldtrunk
svn mv http://path/to/repo/branch/mybranch http://path/to/repo/trunk

注意:在上面的示例中,我使用路径直接在服务器上操作。这比在工作副本上操作更容易完成此类任务。

我知道...但是这也会在trunk文件夹中创建mybranch文件夹!因此,我希望所有项目直接位于trunk下,而不是http://path/to/repo/trunk/mybranch/xxx。 - Emerson
@rlovtang:你的“注释”是错误的,svn移动命令可以在服务器上和任何客户端的任何路径上工作,包括作为工作副本一部分的路径。 - jgifford25
@Emerson,不会创建mybranch文件夹,它会直接在trunk下创建projectx文件夹。 - rlovtang
1
@Emerson 如果你想保险起见,可以先备份仓库,然后尝试这些命令。如果不行的话就回滚(对我来说是有效的)。 - rlovtang
谢谢...我尝试了svn move而不是svn mv...这显然有所不同...或者上次我做错了...现在它完美地工作了! - Emerson
显示剩余2条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接