一般svn代码库目录结构有:
- branches(分支)
- tags(标签)
- trunk(开发主干)
从主干上创建分支
- 右键点trunk —>TortoiseSVN—>BranchTag
To path 你创建Branch/Tag的路路径Create copy in the repository from:(从仓库生成副本)
HEAD revision in the repository(从最新的Revision创建,一般用这个)
Specific revision in repository(指定Revision创建)
Working copy
2.点击OK—>更新svn
分支合并
-
右键trunk—>Merge 选择Merge Type 并填写合并范围
Merge Type
1.Merge a range of revisions
主要是把分支中的修改合并到主干上来
点击Next
URL to merge from 选择要合并的分支
Revision range to merge- all revisions 从创建到最后提交,所有修改的内容
- specific range 指定合并范围,合并指定的revision范围到主分支
- 使用日志对话框选择要合并的修订版本,或输入要合并的修订版本,用逗号分隔。 修订范围可以用破折号指定。
2.Merge two different trees(这个号好麻烦,以后再研究)
可以选择过去的一个主干版本与分支的某个版本进行合并。以分支版本为主,如果主干版本与分支版本有不同的地方,合并时主干的不同部分将被放弃
(1)把主干的修改 合并到分支
分支->右键->merge ->Merge two different trees ->
from 选择分支从路径,并选择从哪个revision开始保留分支修改 ,
to 选择主干路径,并选择从哪个revision开始 把主干修改合并到分支
选择好Merge Type 后,填写合并分支URL和合并Revisions(合并范围) Next(使用默认设置) —>Merge 即可
版本管理:
- tag里放线上或测试的apk 提交时Message写上对应Trunk 的 revision,比如线上出现bug了,需要立即修改,Trunk里的代码正在开发呢(我遇到过这样的),可以通过revision下载代码,修改bug重新提交线上包
- 最好的情况就是在分支上开发新版本,等新版本稳定后再合并到主干上,这样可以多版本并行参考:http://blog.csdn.net/mycwq/article/details/51793847