SVN 切换到不同的分支,允许我稍后 merge/commit

SVN switch to a different branch, allowing me to merge/commit later

看来我应该可以使用 Subclipse 或 Tortoise 来完成此操作。

我开始在一个分支中开发一项功能,并且该功能的范围不断扩大,因此我不会签入以保持该分支稳定。 我想要一个打卡的地方,所以我在原来的分支上分支了,我想把我的副本指向那个分支。

使用 SVN 开关,似乎我必须将解决冲突作为过程的一部分,但我不准备这样做。我只希望我的工作区现在指向它之前指向的分支的副本,允许我在自己的时间进行合并和更新。

有办法吗?

我不确定我是否理解你想要做什么。无论如何,在解决这些冲突之前,您必须与您的同事讨论这些冲突。

但是如果您想推迟解决冲突并开始在新分支上工作,只需签出新分支的新工作副本即可。保留未提交更改的现有工作副本(不要删除它!)并使用新的干净工作副本。

如果我没理解错的话,你有原始分支(分支 1)和你从这个分支代码创建的分支(分支 2)。我不会从分支 1 切换到分支 2,而是检查分支 2,复制我在分支 1 中所做的更改(解决任何冲突)并提交到分支 2。我发现在分支代码库之间使用 SVN 切换不如优雅应该是,有时只更改 copy/paste 代码会更好。

开关必须进行更新。我不认为你的问题与开关有关,它可能与你创建的分支有关。假设您的工作副本已更新为存储库的 r100,并且您开始在本地进行更改。现在您决定创建您的分支,并且您根据不在 r150 的存储库 HEAD 创建它。那么是的,你可能会遇到一些问题,因为分支并不是真正从与你的工作副本相同的源创建的。

如果您想围绕更轻松地存储您的更改进行优化,那么最好的办法是从工作副本创建您的分支。当您 select 您的项目并选择团队 > 创建 Branch/Tag...

时,这是向导中的选项之一

工作副本可能处于疯狂的混合修订状态,这就是创建分支的基础。因此,当您想返回更改并将其合并回主干或让分支赶上主干时,可能会有点困难。

如果您对您的工作副本的修订版本有一个大概的了解,那么折衷的方法是针对存储库修订创建分支。然后分支是干净的,当您使用开关更新工作副本时,您可以最大限度地减少冲突的可能性。