`

SVN配置管理实践--代码管理

阅读更多

 

以下是本人用SVN管理代码的一些实践,但并不一定是“最佳实践”,条条道路通罗马,适合你自己的,才是最好的,仅供参考

 

1.SVN Layout:

---/branch/

---/trunk/

---/tags

------/release

------/20100101

------/20100201

------/20100301

------/20100401

------/release 1.0

.

.

.

------/release 2.0

.

.

.

 

2.下面分阶段,介绍每个分支的作用

(a)开发初始阶段

开发初始阶段,在branch上新建分支,如/branch/yourPrj;此阶段,考虑到会比较频繁的提交、修改产物,所以提交没有那么严格,以快速反应为主

 

(a)第一次release

当第一次release临近时,将/branch/yourPrj cp到trunk,开发人员逐步开始向trunk提交产物,同时确保提交质量

QA前,将/trunk cp到/tags/release,再build,对于bug fix,先merge到release,再build。

 

(b)例行release

以增量开发为例,假定每月release,将trunk上的待发布的revision merge到release,build之。

QA通过之后再打tag(X.X或者$date),如果是比较重大的release,可以自行特别标识(如release X.0)

 

(c)多个team并行开发

如果多team并行开发,而且feature的粒度比较大(比如超过release周期),可以在branch上建分支,如/branch/module1,待开发完后,合并到trunk,release前,将trunk上的待发布的revision merge到release。

 

3.注意事项

(a)按要求提交产物,保持trunk的stable

(b)所有的build,都是以release为基础产生的,所以,在开发人员在不熟悉代码merge之前,不能随意touch release分支,建议在初期每个team指定人员merge

(c)merge代码会是瓶颈,除了要耐心、细致外,还要有利器--批量merge的脚本


 

分享到:
评论

相关推荐

    Eclipse安装SVN-CC-GIT-VSS-CVS详细使用说明书

    ClearCase(简称 CC)、ClearQuest(简称 CQ)是 IBM Rational 产品线中的旗舰产品,是全球领先的软件配置管理和变更管理工具,它广泛地应用于众多的企业级软件工程实践之中,拥有众多的企业级用户。 通过客户化定制...

    SVN经验之谈【最佳实践】.doc

    SVN经验之谈,最佳实践,帮你搞定代码版本管理!

    在Eclipse中使用SVN与CVS代码管理工具管理项目

    二、 SVN(Subversion) - CVS(Concurrent Version System)的替代和升级版本先说说CVS,CVS是开源代码的配置管理工具,其源代码和安装文件都可以免费下载。记得在学校读研的时候,学校实验室的代码全部都用CVS管理,为...

    SVN使用手册中文版快速入门

    合并的最佳实践 手工追踪合并 预览合并 合并冲突 关注还是忽视祖先 常见用例 合并一条分支到另一支 取消修改 找回删除的项目 常用分支模式 发布分支 特性分支 转换工作拷贝 标签 建立最简单的标签 建立复杂的标签 ...

    SVN使用手册中文版.chm

    合并的最佳实践 手工追踪合并 预览合并 合并冲突 关注还是忽视祖先 常见用例 合并一条分支到另一支 取消修改 找回删除的项目 常用分支模式 发布分支 特性分支 转换工作拷贝 标签 建立最简单的标签 建立复杂的标签 ...

    基于Java的SVN服务器Web图形化管理设计源码

    本设计源码提供了一个基于Java的SVN服务器Web图形化...该项目是一个SVN服务端web图形化管理系统,适合用于学习和实践Java、HTML、JavaScript、CSS和Shell技术,以及开发基于Java的SVN服务器Web图形化管理相关的系统。

    SVN安装和深入理解分支和模拟实践

    二、配置和使用方法【服务器端】 1、添加代码库【Repository】 2、安全性设置 三、trunk(主线) branch(分支) tag(标记)  1、SVN仓库目录结构Repository 2、trunk(主干|主线) branchs(分支) tags(标记)作用 3、SVN...

    使用Subversion进行版本控制(针对 Subversion 1.4)

    代码样例 9. Subversion 完全参考 Subversion 命令行客户端:svn svn选项 svn子命令 svnadmin svnadmin选项 svnadmin子命令 svnlook svnlook选项 svnlook子命令 svnsync svnsync选项 svnsync子命令 svnserve ...

    spring-cloud使用的各种示例

    - [spring-cloud-config-svn-refresh](https://github.com/ityouknow/spring-cloud-examples/tree/master/spring-cloud-config-svn-refresh):配置中心svn版本示例,客户端refresh版本示例 - [spring-cloud-config-...

    源代码控制VisualSVNServer的配置和使用方法(二)

    二、TotoiseSVN的基本使用方法在项目管理实践教程一、工欲善其事,必先利其器【BasicTools】中,我已经讲解了怎样安装TortoiseSVN。在上面的讲解中已经讲了怎么使用VisualSVNServer了,今天我要讲的是,TortoiseSVN...

    JAVA程序开发大全---上半部分

    4.3.1 配置MyEclipse连接SVN服务器 63 4.3.2 将SVN服务器中的项目导入到MyEclipse 64 4.3.3 将MyEclipse中的项目提交到SVN服务器 65 4.4 本章小结 67 第5章 Java开发项目的软件测试工具——JUnit 68 5.1 软件测试...

    maven window下安装包

    第11章:用Maven管理项目版本/11.4 版本管理举例/11.4.4 在POM中配置SVN地址 第11章:用Maven管理项目版本/11.4 版本管理举例/11.4.5 在POM中配置/11.4.5.1 发布插件以及标签的基础目录 第11章:用Maven管理项目版本...

    Git权威指南PDF完整版

    18.1 代码管理之殇/ 253 18.1.1 发布分支/ 253 18.1.2 特性分支/ 256 18.1.3 卖主分支/ 257 18.2 分支命令概述/ 258 18.3 “Hello World”开发计划/ 259 18.4 基于特性分支的开发/ 260 18.4.1 创建分支 user1/getopt...

    iuhyiuhkjh908u0980

    logo 设计不会,就这样先凑合了写道 Fuseblog预备...IVY,它是一个管理(记录、跟踪、解析和报告)项目依赖的工具,可与ApacheAnt紧密集成,很多的信息,请参照: http://ant.apache.org/ivy 1.代码可以从这里得到 svn co ...

    krad-workshop:Kuali Days 2012 KRAD 实践工作坊档案

    Kuali Days 2012 KRAD 实践工作坊从 Google 代码 ( ) 存档。 与 Kuali Days 2012 研讨会中使用的 KRAD 培训项目一起使用的源代码。 请注意,VM 的 update-environment.sh 脚本仍然指向 google code svn 存储库。 要...

    cmake 基础教程 多平台工程构建工具

    svn一样,KDE将代码仓库从CVS迁移到SVN,同时证明了SVN管理大型项目的可用性),在KDE 开发者使用了近10年autotools之后,他们终于决定为KDE4选择一个新的工程构建工具,其根本原因 用KDE开发者的话来说就是:只有...

    基于Spring和MyBatis的Java交流社区设计源码

    文件类型包括1599个SVN基础文件、587个GIF图片文件、400个JavaScript脚本文件、379个PNG图片文件、282个Java源代码文件、234个CSS样式文件、153个HTML页面文件、119个JPG图片文件、65个XML配置文件和30个Markdown...

    phplearning:php入门与进阶学习资料

    ####背景因为工作需要,需要... 多态代码协同工具1. git2. svn与编程相关的系统知识1. windows2. linux3. 不同的厂商4. 系统基础命令5. 环境变量常见数据库介绍与mysql基础1. 数据库类型关系型键值型文档型列型图型2. p

Global site tag (gtag.js) - Google Analytics