svn分支以及分支合并

分支开发流程

什么是分支?

当每一版本发出,又需要进行新功能开发,即从当前主线copy一份和主线一样的代码仓,在不影响主线功能的前提下,开发新功能。

Copy出来的新代码仓即为分支Branch原代码仓即为主线Trunk

建立的Branch功能不是开发新功能,而是稳定代码时,称为Tag

新功能开发完后,需手动分支合并merge)到主线.

任何情况下,版本发布时,编译apk源码均已主线为准。

同一个功能feature,不推荐同时存在2以上分支。


建立分支(Branch

选中原工程目录,选择SVN ->Branch/tag

To path统一到/dev/VPayBranch

一般不建议使用working copy创建分支


 svn分支以及分支合并


2.3 创建成功后,切换到/dev/VPayBranch目录svn update

合并分支到主线

3.1 选中主线(to)目录,选择SVN -> Marge

3.2 选择如下图

 svn分支以及分支合并

选择分支SVN路径,选择需要合并的版本号(shift多选)

 svn分支以及分支合并

合并

svn分支以及分支合并
使用Test merge test,点击merge确认修改.

3.3 在主线目录查看merge的修改是否正确

简单修改建议使用svncommit对比(不提交

复杂修改推荐二进制文件对比工具

3.4 在主线commit(提交代码。

同步主线到分支

2逆向操作即可

合并主线

废弃分支

选择 SVN -> Repo-browser 找到对应目录删除即可

此操作无法恢复,请谨慎操作。

只能Branch目录操作,trunk目录禁止此操作。

Eclipse引入同名project

Eclipse同一个workspace中是无法打开2包名相同的工程的。

所以,为了能同时修改主线分支的代码需要一些特殊的技巧。

打开工程目录下.project文件,修改name属性即可

 

其他

7.1 文件对比工具

推荐Beyond Compare,用于批量对比文件差异,以验证同步或合并是否正确。

7.2 推荐文章

http://www.cnblogs.com/huang0925/p/3254243.html

http://www.oschina.net/translate/a-successful-git-branching-model


svn版本回滚:

http://blog.csdn.net/aerchi/article/details/28590639