Javashop bug同步解决方案
一、核心问题
在我们处理bug的过程中,经常发生以下场景:解决trunk版bug的同时需要解决v6.1.1版本。
这时我们就要手动切换workspace,手动覆盖;这样搞起来很麻烦;
而当定版之后,在trunk中解决了大量的bug,如果一个一个的去tags版中修复,工作量不亚于重新解决一遍bug。
造成这个问题的主要原因是,我们的svn使用的不够熟练,没有把svn的用法完全提现出来。
二、解决方案
(使用eclipse的subversion插件中的 切换以及合并结合)
场景:v6.1.1定版后第三天,trunk版又解决了大量的bug。
首先,我们要把trunk版的代码down下来,并且保证本地版本最新。
Step1:在trunk的workspace中 右键javashop项目-team-切换:
Step2:在弹出dialog中输入需要切换的分支的url;例如
svn://newsvn.javamall.com.cn/product/javamall/tags/release_6.1.1/javashop
Step3:
切换完分支之后,右键team-合并
Step4:
图中的选项含义分别是:
1) 从主干合并到分支
2) 从分支合并到主干
3) 将主干上的修改合并到分支(使用collabnet)
4) 合并2个分支到主干
5) 从主干到分支,手工指定不需要合并的修改
6) 从主干到分支,手工指定要合并的修改
选择第一个,会弹出如下窗口:
点击finish
有变化的文件 有冲突的文件都会显示出来。Svn会自动合并能够合并的代码,而由冲突的则需要手动处理。手动处理完成后,提交即可。