致力于新的Subversion分支

时间:2011-07-26 09:17:35

标签: svn

这可能是一个愚蠢的问题,但我之前在Svn中没有这样做。

我有一个干线的工作副本,我一直在做一些重构。在此期间,主干本身已经发生了很大的变化,我还没准备好合并。我想将我当前的更改搁置到一个尚不存在的新分支上。

这里的正确程序是什么?感谢

3 个答案:

答案 0 :(得分:5)

查找工作副本的修订版基于:

svn info .

使用

将该版本的trunk复制到服务器上的分支
svn copy svn://yourrepo/trunk svn://yourrepo/branches/a -r [revision]

然后将您的WC切换到分支

svn switch svn://yourrepo/branches/a

然后,您可以将当前更改提交到分支。

答案 1 :(得分:0)

通过几个简单的步骤:

1)您必须分支主干(这将要求您在存储库中为新分支创建不同的文件夹)。如果您使用 Tortoise SVN ,只需右键单击工作文件夹并在Tortoise Svn子菜单中选择branch

2)在您的工作文件夹中,您必须使用switch命令开始在新分支中工作。在 Tortoise 右键点击 - >切换并选择新分支

你现在在分公司工作

HTH,JP

答案 2 :(得分:0)

这实际上是一个非常好的问题。在这种情况下,我要做的是创建一个不是基于当前工作副本的分支,而是在制作工作副本时从主干版本创建。

以下是步骤:

  1. 创建一个新的分支文件夹。
  2. 执行“svn info”并尝试从您制作中继的Workng副本时检索修订号。例如,如果您在Rev 40上制作工作副本并且HEAD修订版现在为60,则需要使用Rev 40作为新分支的基本修订版。
  3. 执行“svn copy”并在将Trunk修订复制到新分支文件夹时使用该修订号。
  4. 现在做一个新分支的“svn checkout”。
  5. 将文件从主干的工作副本复制到分支的工作副本。
  6. 从分支工作副本提交更改并废弃主干工作副本。
  7. 现在,您应该拥有一个新分支,其中包含您在开始更改时基于实际修订的当前更改。毋庸置疑,新分支将显着过时,需要从Trunk更新。你可以推迟这个,直到你准备合并为止。