lguyss

SVN库的目录结构(知识积累)

2010-01-01 23:02  土星的狗狗  阅读(985)  评论(0编辑  收藏  举报

SVN库的目录结构

1、所有项目都在一个SVN库中么?

对于这个问题,个人认为,应该每个项目建一个SVN库,为什么这样说呢,因为SVN是全局版本,假如SVN库是如下结构:

SVN库 <全局版本 1.1>

┠ 项目A <1.1>

┖ 项目B <1.1>

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

2、SVN库的目录结构该怎样规划?

参考了国外一些主要的开发网站,如SourceForge,大同小异,类似这样的目录结构:

SVN库

┠tags(发布)

┃   ├1.1 rc1

┃   ├1.2

┃   ├1.5

┃   └1.9

┠trunk (主版本)

┃   └ project

┃          ├src

┃          ├classes

┃          └WEB-INF

┖branches (分支)

        └分支

主要的开发工作放在trunk,分支放在branches,发布版本放在tags。

存储库

┠项目名

┃   ├trunk:主版本

┃   ├branches:分支版本(独立版本)

┃   └tags:标记版本,比如发行版 v 1.0/ v 2.0等等

3、版本库的管理原则

1、项目负责人和版本管理员负责架构项目目录结构,包括配置文件、第三方JAR  文档

2、项目负责人分配开发人员目录权限,由版本管理员负责实施 ,权限分配粒度要细

3、trunk ,tags ,branches ,项目负责人、协同版本管理员构建tags 和branches 

4、版本管理员负责解决开发人员在开发过程中的有关版本问题

5、开发人员每次修改,或者新增、删除、拷贝工作区对象后,应该立刻提交到版本库,有效保持工作区与资源库的高度一致 ,每天下班之前提交、(更新)

6、开发人员在每次修改工作区中代码或者文档时,首先更新该对象,可以尽量减少冲突、合并

7、保证提交到的版本库的代码没有BUG以免影响开发组 ,可以适当利用加锁机制,减少冲突 

8、项目负责人和版本管理员负责软件的测试版,构建测试环境 ,branches由版本管理员进行 (checkout)

9、项目负责人和版本管理员负责发布软件的发布版,与系统部协调构建发布环境(export)

10 、版本管理员负责清理有关不需要的branches ,tags

分类:

技术点:

相关文章: