文件目录说明:
-
trunk – 主干,正常业务全在此开发
-
branches – 分支目录,fixbug分支/实验分支/紧急法版分支
-
tags – tag目录,暂定只对上线版本打tag,如 online_1.0.0
分支开发流程:
-
step 1:
在trunk上开发相关功能 -
step 2:
trunk代码开发完毕,代码冻结 -
step 3:
基于已经冻结的trunk,为上线版本打tag (eg: online_1.0.0)此时的目录结构为 trunk/ (freeze) branches/ tags/ online_1.0.0 (copy from trunk)
-
step 4:
trunk开始开发新功能,trunk此时为开发版 -
step 5:
发现1.0.0有bug,需要修改,或有紧急需求需要快速上线,基于online_1.0.0的tag做branch此时的目录结构为 trunk/ (dev) branches/ bugfix_1.0.0 (copy from tag/online_1.0.0) (fixbug 分支建议命名) emergency_1.0.0 (copy from tag/online_1.0.0) (紧急需求 分支建议命名) experiment_1.0.0 (copy from trunk or tag) (实验性 分支建议命名) additional_1.0.0 (copy from trunk or tag) (附加简单的功能到已上线版本 分支建议命名) tags/ online_1.0.0 (copy from trunk)
-
step 6:
在bugfix_1.0.0或emergency_1.0.0分支上进行开发,在trunk进行其他开发 (并行开发) -
step 7: 在bugfix_1.0.0或emergency_1.0.0开发完成之后,基于bugfix_1.0.0或emergency_1.0.0的branch
做release等,上线后将当前上线分支打tag eg:online 1.0.1 trunk/ (dev) branches/ bugfix_1.0.0 (copy from tag/online_1.0.0) (fixbug 分支建议命名) emergency_1.0.0 (copy from tag/online_1.0.0) (紧急需求 分支建议命名) experiment_1.0.0 (copy from trunk or tag) (实验性 分支建议命名) tags/ online_1.0.0 (copy from trunk) online 1.0.1 (copy from branches/bugfix_1.0.0)
-
step 8:
根据需要选择性的把ugfix_1.0.0或emergency_1.0.0分支merge回trunk(需不需要,什么时候进行这步操作,要根据具体情况)
转载请注明:学时网 » svn分支、主干、tag管理