颠覆分支问题

时间:2009-08-07 06:39:24

标签: svn branch

我已经检查了我应用的特定Subversion分支。称之为'1.0'。我一直在做一些更改,添加一些新文件等,但还没有提交更改。但是,我不想将更改提交到“1.0”分支。相反,我想将我的更改提交到新的“1.1”分支。

据我所知,我需要首先查看“1.0”分支的新副本,然后创建一个名为“1.1”的新Subversion分支,然后在提交之前手动复制我的待处理更改。

有更简单的方法吗?

3 个答案:

答案 0 :(得分:9)

您可以远程创建分支,然后切换到新分支并提交更改。

$ cd /path/to/working
$ svn copy svn://my/repos/trunk svn://my/repos/branches/1.1 -m "Created branch 1.1"
$ svn switch svn://my/repos/branches/1.1
$ svn commit -m "Your message"

答案 1 :(得分:3)

实际上,您只需使用远程URL即可创建一个分支,而无需检出工作副本。如果对{1>分支执行svn copy主干(或1.0分支),则可以执行svn switch将工作副本移动到指向新分支然后在那里提交。 (如果您之前没有这样做过,那么保存当前工作副本的备份是明智的,这样您就不会丢失修改。)

例如......

svn copy http://svn.example.com/branches/1.0/ \
         http://svn.example.com/branches/1.1/ \
    -m "Creating 1.1 branch."

cd /path/to/working/copy
svn switch http://svn.example.com/branches/1.1/

请查看svn help switch了解详情。

答案 2 :(得分:2)

svn switch可让您将工作副本切换到其他分支。您可以事先创建分支,而无需使用svn copy <repository>/branches/1 <repository>/branches/2

签出新副本