SVN中的trunk branches tags
来源:互联网 发布:淘宝代购服务点查询 编辑:程序博客网 时间:2024/04/19 15:32
trunk:表示开发时版本存放的目录,即在开发阶段的代码都提交到该目录上。
branches:表示发布的版本存放的目录,即项目上线时发布的稳定版本存放在该目录中。
tags:表示标签存放的目录。
在这需要说明下分三个目录的原因,如果项目分为一期、二期、三期等,那么一期上线时的稳定版本就应该在一期完成时将代码copy到branches上,这样二期开发的代码就对一期的代码没有影响,如新增的模块就不会部署到生产环境上。而branches上的稳定的版本就是发布到生产环境上的代码,如果用户使用的过程中发现有bug,则只要在branches上修改该bug,修改完bug后再编译branches上最新的代码发布到生产环境即可。tags的作用是将在branches上修改的bug的代码合并到trank上时创建个版本标识,以后branches上修改的bug代码再合并到trunk上时就从 tags的version到branches最新的version合并到trunk,以保证前期修改的bug代码不会在合并。
下面举几个常用的场景
一直以来用svn只是当作cvs,也从来没有仔细看过文档,直到今天用到,才去翻看svn book文档,惭愧
需求一:
有一个客户想对产品做定制,但是我们并不想修改原有的svn中trunk的代码。
方法:
用svn建立一个新的branches,从这个branche做为一个新的起点来开发
代码
1. svn copy svn://server/trunk svn://server/branches/ep -m "init ep"
<script>render_code();</script>
Tip:
如果你的svn中以前没有branches这个的目录,只有trunk这个,你可以用
代码
1. svn mkdir branches
新建个目录
需求二:
产品开发已经基本完成,并且通过很严格的测试,这时候我们就想发布给客户使用,发布我们的1.0版本
代码
1. svn copy svn://server/trunk svn://server/tags/release-1.0 -m "1.0 released"
咦,这个和branches有什么区别,好像啥区别也没有?
是的,branches和tags是一样的,都是目录,只是我们不会对这个release-1.0的tag做修改了,不再提交了,如果提交那么就是branches
需求三:
有一天,突然在trunk下的core中发现一个致命的bug,那么所有的branches一定也一样了,该怎么办?
代码
1. svn -r 148:149 merge svn://server/trunk branches/ep
其中148和149是两次修改的版本号。
- SVN中的trunk branches tags
- SVN 中的trunk、branches、tags
- SVN trunk branches tags
- svn中的Trunk,branches,tags深度理解
- SVN中的trunk,branches,tags用法详解
- SVN trunk, branches and tags
- svn之trunk、branches、tags
- SVN trunk, branches and tags
- SVN trunk, branches and tags
- SVN trunk, branches and tags
- SVN trunk, branches and tags
- SVN trunk, branches and tags
- svn之trunk、branches、tags
- SVN trunk, branches and tags
- svn 的 trunk、branches、tags
- SVN的trunk、branches、tags
- Svn Intro - Trunk Branches Tags
- SVN 中trunk、branches、tags
- CSRF——攻击与防御
- struts2 使用的小问题
- javascript 自定义函数劫持
- 文件大小和文件占用空间的区别
- 7月的感冒
- SVN中的trunk branches tags
- 沉闷
- Oracle数据库的字符集的查看与修改
- SQLServer2005的服务以及开启的服务
- 常用颜色的RGB值及中英文名称
- linux多线程啊,怎么这么难啊,MFC的那些还没学好呢,又弄这些鬼东西!!
- 美句
- VS2010无法运行与调试Silverlight 3应用程序
- 如何提高网站的点击率--教你几种好办法