2010-05-18 64 views
6

改变我在一个愚蠢的情况是SVN分支:我已经做了在主干的工作拷贝了一些变化。由于这些更改尚未经过测试,因此我想将所有更改转移到分支。根据Tortoise手册,Switch将会失去我所有的修改。有没有办法在工作副本中保留我的更改并将其保存在存储库的分支中。创建从树干

回答

0

不能直接使用。但是,您可以创建一个补丁,然后切换并丢失所做的更改,然后将补丁应用到您的分支。

在你的工作拷贝Richt点击最上面的文件夹,选择乌龟SVN>创建补丁。选择要包含的文件(通常是所有更改)并将其保存在某处。

然后切换。

然后在工作拷贝再次richt单击(现在指向分支),并选择乌龟SVN>应用补丁。您会看到一个菜单,您可以右键单击并选择全部应用。保存更改,你应该很好去。

+0

谢谢,我会试试这个方法。 – John 2010-05-18 09:08:48

+0

看起来这个答案是downvoted(虽然它有一个0分,我可以看到它在我的声誉设置)。谁能告诉我为什么? – Peter 2010-06-08 14:29:16

13

从你的工作拷贝,而不是存储库中创建一个分支。这样你就不会丢失任何东西

+0

你的意思是分支/标签? 但是,如何更改工作副本的默认链接? – John 2010-05-18 09:08:25

+0

之后可以切换。您的更改将被转至新分支,并且切换没有问题。你将失去noithing – Midhat 2010-05-18 09:24:06

+3

在TortoiseSVN点击分支/标签,然后,而不是选择HEAD或特定修订选择工作副本单选按钮。这就是米沙特正在谈论的。 – 2010-05-18 14:23:10

8

如果我正确地理解了这个问题,你正在处理一个副本,你检出了TRUNK,但你还没有提交更改。

在这种情况下,可以很容易地解决这个问题:

  1. 创建一个分支关闭TRUNKsvn cp <base URL> <new branch URL>
  2. 切换到新的分支(由上述<new branch URL>指定)
  3. 现在你的工作副本应指向<new branch URL>
  4. 提交更改

既然你有没有犯什么TRUNKTRUNK版本的项目被留下未修改

+0

好清楚的解释! (2)可以使用示例命令“svn switch <新分支URL>” – 2013-11-20 23:52:21

0

创建的变化补丁,然后将它应用到你喜欢的任何分支或工作副本。

+0

这不提供问题的答案。要批评或要求作者澄清,在他们的帖子下留下评论 - 你可以随时评论你自己的帖子,一旦你有足够的[声誉](http://stackoverflow.com/faq#reputation),你将能够[评论任何帖子](http://stackoverflow.com/privileges/comment)。 – slfan 2013-06-07 11:58:26

+1

我认为我的答案与问题非常相关。 – abbas 2013-06-10 16:17:21