svn:将更改从分支合并到工作副本而不更新主干

时间:2013-09-01 18:36:11

标签: eclipse svn version-control branch branching-and-merging

我的开发团队最近的规模从一个(我自己)增加到两个。作为唯一的开发人员,我将主干维护为我们软件的稳定版本。我会在我的工作副本中进行更改,测试,只有在我确定它稳定后才会推送到主干。

我们正在努力为新的团队成员提供共同开发代码库的最佳流程。我们已经确定行李箱将保持稳定;只有在代码审查和彻底测试后才会将更改推送到那里。队友将为他的作品创作feature branches;当他请求代码审查时,我会这样做,然后一旦批准,他会将分支合并到主干并删除分支。

我们都使用eclipse和subclipse插件来管理我们的工作副本。

问题在于,虽然我可以查看我的工作副本和他的分支(团队 - >比较 - >分支)之间的差异,但我不知道如何从他的分支中获取代码以与我的工作副本合并。我希望能够在不丢失任何本地更改的情况下获得更改,在本地运行其代码,并且不会影响主干。这似乎排除了Eclipse / SVN中的选项切换到另一个分支/标记/修订版,因为我需要将他的代码与我的代码合并(以确保我的工作副本的代码与我的本地数据库一致)。 / p>

我们已经查看了SVN Patch功能,而不是使用分支,也许他应该通过我运行的补丁发送他的更改?

所以这里的具体问题是:如何在不触及主干的情况下将分支中的更改与我的工作副本合并/合并?我也很感激能够以一种利用svn和eclipse的力量以我错过的方式来实现我们的工作流程的建议。

3 个答案:

答案 0 :(得分:3)

你们两个都应该检查行李箱以及你们正在处理的任何分支机构。当他准备将他的分支合并到主干时,你应该:

  1. 确保他的分支成功构建。
  2. 确保您的行李箱结帐是原始的(没有SVN添加,修改,删除,无版本或忽略文件)。
  3. 进行合并,在他的帮助下解决任何冲突。
  4. 执行代码审查,包括确保中继对其更改保持稳定。
  5. 提交合并。
  6. 使用SVN command-line在Eclipse外部进行合并。我在Eclipse和Subclipse上看到了足够多的问题,告诉我插件不可靠。

    如果是我管理这个工作流程,我会有两个检查中继线:一个用于合并并始终处于原始状态,另一个我可以积极开发。这样,我就不需要创建我的更改补丁,然后合并,然后应用补丁。

    希望这有帮助。

答案 1 :(得分:0)

我已经足够用命令行更新分支' svn up'。

答案 2 :(得分:-1)

可悲的是,SVN可能不适合这种模式。分支在Subversion中造成很多痛苦 查看here以获取更多详细信息。