2009-08-26 52 views
1

我刚刚做了一些事情,但没有经过考虑。我从包含使用TortoisSVN进行本地修改的工作目录中创建了一个分支。我假设它做了一个副本并切换一次。现在我的新分支的第一个版本与任何版本的trunk不同。问题是,我如何将这个分支重新集成到主干中?如果我使用分支的第一个和最后一个版本之间的增量,该变更集不包含我在工作目录中的初始修改。从工作目录制作的重新整合分支

如果我从最新版本的trunk中分支出来,然后提交我的本地更改,这不会有问题,因为分支的第一个版本将与相应的版本相同树干。

回答

0

我想我可以在创建分支之前找到主干的版本,并使用它作为变更集的起点。看起来很尴尬。有没有更优雅的解决方案?

编辑:是的,有一个更优雅的解决方案。我错了。分支,即使是从工作目录创建的分支,都会保留分割之前的所有主干历史。我正在使用TortoisSVN,所以我只需在日志窗口中取消选中“停止复制/重命名”以查看拆分之前的版本。然后,我只是在创建分支之前立即使用版本作为我的更改集的开始。毕竟没有问题。

+0

更优雅的将不提交修改,并在同一步骤创建分支。既然你这样做了,我想你可以做些什么来改善这个过程。 – RaYell 2009-08-26 13:02:50

0

这应该对你有所帮助。

我打电话给你的新分支invalid可以缩短一点。

  1. invalid分支和躯干之间的差异(只是创造新的无效分支之前使用的版本 - 我们称之为一个invalid) - 它将使您从您创建无效分支时COMMITED而且你的工作副本的变化不是trunk的一部分。
  2. 将这些更改应用于主干。
  3. 重返您invalid分支trunk(初步改变已经存在 - 第2步)
+0

在这种情况下,为什么我需要两次合并?在创建分支之前的主干版本与无效分支的HEAD之间的差值合并会产生相同的结果。 – Dima 2009-08-26 13:09:14