Eclipse中的Subversion - 在存储库中使用未提交的工作切换分支

时间:2012-06-21 07:14:21

标签: eclipse svn

假设我有以下服装:

Trunk是我的主要开发线,程序员在完成后承诺。 分支V1.0是我在发布1.0版时创建的分支。

程序员正在处理主干,但需要切换到分支以修复错误。 当切换回主干时,Subversion会给我最新的SVN存储库,其中不包含最近的更改。 因此,为了切换,他将不得不承诺他所拥有的东西,否则这些变化就会失去"。我知道它们仍然保存在本地存储库中,但它仍然意味着一旦它转回就一个接一个地恢复它们。

我在这里错过了什么吗?

编辑:

现在我正在思考这些问题:

每个程序员都有他自己的"私人"发展分支从关闭。只要他愿意,他就可以去那里。当他完成了他所写的内容时,他们可以将它合并到后备箱中。他再次开始接受下一个任务。 如果在任何时候他需要修复其他版本中的错误,他可以只提交给自己的私有分支,获取odl版本并修复它。然后,在将更改提交到修复程序后,他可以轻松切换回自己的开发分支。

那会有用吗?

3 个答案:

答案 0 :(得分:2)

我认为颠覆不像你所描述的那样被认为是切换。一个解决方案是拥有两个工作区,一个用于分支,另一个用于主干,因此您可以毫无问题地从一个工作区切换到另一个工作区。我知道这不是一个好的。

答案 1 :(得分:0)

考虑切换到更适合您的方法的版本控制工具。我自己的建议是Mercurial,加上MercurialEclipse。我所知道的唯一缺点是Subversion更适合存储二进制文件,并且Mercurial的子存储库不能像Subversion的外部工作那样好。

在Mercurial中,您的程序员可以将他们的更改提交到他们的私有存储库,再次在本地合并和提交,然后将生成的更改推送到官方存储库,其他程序员可以将其转移到他们自己的私有存储库中。

答案 2 :(得分:0)

出于此类目的的最佳解决方案是拥有两个单独的工作副本。一个用于使用主干,一个用于分支。