设为首页收藏本站
开启辅助访问

创星网络[分享知识 传递快乐]

 找回密码
 立即注册

QQ登录

只需一步,快速开始

用新浪微博登录

只需一步,快速搞定

搜索

配置管理之trunk branches tags

2012-8-7 22:00| 发布者: cryinglily| 查看: 393| 评论: 0|原作者: luinstein

摘要: 一直没明白trunk branches tags的意思,今天问了一下google,来理解一下。 trunk:主线,开发过程中的工作目录 branches:支线,临时分支,定制化需求 branches/order008 branches/order009 tags:发布目录,不做修改 ...
一直没明白trunk branches tags的意思,今天问了一下google,来理解一下。

trunk:主线,开发过程中的工作目录
branches:支线,临时分支,定制化需求
branches/order008
branches/order009
tags:发布目录,不做修改
tags/release-1.0
tags/release-1.1

场景一:
产品开发已经基本完成,并且通过很严格的测试,这时候我们就想发布我们的1.0版本,不再提交代码
1. svn copy svn://server/trunk svn://server/tags/release-1.0 -m \"1.0 released\"

场景二:
有一个客户想对产品做定制,我们可以从已发布库中选择一个版本,做为起点来开发
1. svn copy svn://server/tags/release-1.0 svn://server/branches/order009 -m \"定单009\"  

场景三:
有一天,突然在trunk下的core中发现一个致命的bug,那么所有的branches一定也一样,这时需要进行分支合并
1. svn -r 148:149 merge svn://server/trunk branches/order008
2. svn -r 148:149 merge svn://server/trunk branches/order009
其中148和149是两次修改的版本号。

由于我们是给自己公司的网站源码做配置管理,没有明确的trunk branches tags区分。我们以SCRUM的形式做开发,一般保持两个版本线,一条主线A,一条支线B。A与运行版本保持一致,B做为Sprint开发的工作目录。A,B都可以提交代码,视情况在A,B之间进行部分合并。Sprint开发完成后,进行总合并,并选择其中一条继续做主线,移除另一条。下一期Sprint开始的时候,继续A,B两条线的开发。
这样做的目的,也是为了适应自己的配置需求,在进行B线开发时,经常会有A线的改动。A线的代码保持最新,可更新到运行环境的能力。混乱经常发生在合并A,B的时候,不过长痛不如短痛,用一时的混乱,换取长期的稳定。

鲜花

握手

雷人

路过

鸡蛋

相关分类

QQ|Archiver|手机版|小黑屋|创星网络 ( 苏ICP备11027519号|网站地图  

GMT+8, 2025-2-23 01:01 , Processed in 0.051777 second(s), 16 queries .

Powered by Discuz! X3

© 2001-2013 Comsenz Inc.

返回顶部