您的位置:首页 > 其它

关于SVN的目录结构 and 使用的简单说明

2011-04-24 12:32 543 查看
■SVN库的目录结构(每个项目建一个SVN库)

主要的开发工作放在trunk,分支放在branches,发布版本放在tags(不允许修改)。

SVN库
┠tags(发布)
┃ ├1.1
┃ ├1.2
┃ ├1.5
┠trunk (主版本)
┃ └ proj
┃ ├src
┃ ├classes
┃ └WEB-INF
┖branches (分支)
└分支

■按照开发时间的顺序说明如下:
△1.0开发完毕,代码 冻结
基于已经冻结的trunk,为release1.0打tag
此时的目录结构为

SVN库
┠tags
┃ ├tag_release_1.0 (copy from trunk)
┠trunk( dev 1.0 )
┃ └ proj
┃ ├src
┃ ├classes
┃ └WEB-INF
┖branches

△2.0 开始开发,trunk此时为2.0的开发版
发现1.0有bug,需要修改,基于1.0的tag做branch
此时的目录结构 为

SVN库
┠tags
┃ ├tag_release_1.0 (copy from trunk)
┠trunk( dev 2.0 )
┃ └ proj
┃ ├src
┃ ├classes
┃ └WEB-INF
┖branches
┃ └ dev_1.0_bugfix (copy from tag/release_1.0)

△在1.0 bugfix branch进行1.0 bugfix开发,在trunk进行2.0开发
△在1.0 bugfix 完成之后,基于dev_1.0_bugfix的branch做release等
△根据需要选择性的把 dev_1.0_bugfix这个分支merge回trunk(什么时候进行这步操作,要根据具体情况)

每个项目建一个SVN库,为什么?
因为SVN是全局版本,假如SVN库是如下结构:

SVN库 <全局版本 1.1>

┠ 项目A <1.1>

┖ 项目B <1.1>

这就会导致任何一个项目修改,影响全局版本修改,不能真实反映单个项目的版本情况。

本文出自 “道可道非常道” 博客,请务必保留此出处http://sontou.blog.51cto.com/2636886/552391
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: