博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
理解SVN中trunk,branches,tags
阅读量:3517 次
发布时间:2019-05-20

本文共 1385 字,大约阅读时间需要 4 分钟。

Subversion有一个很标准的目录结构:

project

 +-- trunk

 +-- branches

 +-- tags (此目录只读)

这个标准的目录结构我们在大多数的开源项目中都能看到,这是因为基于这套标准目录结构为软件开发提供了一种非常好的宏观版本库管理机制(特别是在产品类项目中)。

trunk为主开发目录,branches为分支开发目录,tags为存在目录

1 Trunk

Trunk中文翻译为主干的意思,在项目运作过程中,日常的开发和管理资料都在此目录中进行维护和更新。

2 Branches

Branches的中文意思为分支,在项目运作过程中,存放阶段性成果(版本),这些阶段性成果是可维护(包括为客户定制化的版本)。

3 tags

tag的中文意思为标签,此目录为一些阶段性成果进行存档。为只读目录,不允许进行修改。

4 使用实例

比如开发项目project。当前项目进展到版本3.0.0.140224

Trunk目录中只存储当前最新的开发版本。

Branches目录中存储每个版本最新的子版本。

Tags目录中存储所有发布的版本。包括标准版本和标准版本的各个子版本。

此时可能会出现的目录结构如下:

project

|

+-- trunk

+ |

+ +----- main.cs (3.0

+

+-- branches

+ |

+ +-- r1.3.0.120422

+ + |

+ + +---- main.cs 1.1版本的最新文件)

+ +

+ +-- r2.1.0.130422

+ |

+ +---- main.cs 2.2版本的最新文件)

+

+-- tags (此目录只读)

|

+-- r1.0.0.120422

+ |

+ +---- main.cs 1.0版本的发布文件)

+

+-- r1.1.0.120622

+ |

+ +---- main.cs 1.1版本的发布文件)

+

+-- r1.2.0.121122

+ |

+ +---- main.cs 1.2版本的发布文件)

+

+-- r1.3.0.130422

+ |

+ +---- main.cs 1.3版本的发布文件)

+

+-- r2.0.0.130522

+ |

+ +---- main.cs 2.0版本的发布文件)

+

+-- r2.1.0.131222

|

+---- main.cs 2.1版本的发布文件)

 

 

附件:

版本号定修改规则

 * 主版本号(1)

:当功能模块有较大的变动,比如增加多个模块或者整体架构发生变化。此版本号由项目决定是否修改。

* 子版本号(1):当功能有一定的增加或变化,比如增加了对权限控制、增加自定义视图等功能。此版本号由项目决定是否修改。 * 阶段版本号(1)

:一般是 Bug 修复或是一些小的变动,要经常发布修订版,时间间隔不限,修复一个严重的bug即可发布一个修订版。此版本号由项目经理决定是否修改。

* 日期版本号(051021):用于记录修改项目的当前日期,每天对项目的修改都需要更改日期版本号。此版本号由开发人员决定是否修改。

 * 希腊字母版本号(beta):此版本号用于标注当前版本的软件处于哪个开发阶段,当软件进入到另一个阶段时需要修改此版本号。此版本号由项目决定是否修改。

 

转载地址:http://uotqj.baihongyu.com/

你可能感兴趣的文章
关于Linux系统使用遇到的问题-1:vi 打开只读(readonly)文件如何退出保存?
查看>>
redis 持久化详解,RDB和AOF是什么?他们优缺点是什么?运行流程是什么?
查看>>
spring注解版(一)
查看>>
SpringBoot中访问控制层(controller)得不到Json数据
查看>>
react项目报出警告Warning: Cannot update during an existing state transition (such as within `render`).
查看>>
BFC(Block Formatting Context)
查看>>
什么是作用域,什么是闭包,什么是作用域链
查看>>
惰性求值,面向对象
查看>>
lodash源码分析之baseSlice()函数
查看>>
数据结构之列表
查看>>
发布/订阅模式 vs 观察者模式
查看>>
es5中的arguments对象
查看>>
git本地仓库和远程仓库关联,分支重命名
查看>>
js对象的深拷贝,你真的觉得很简单吗?
查看>>
你真的了解map方法吗?手动实现数组map方法。
查看>>
带你手动实现call方法,让你收获满满
查看>>
前端知识体系
查看>>
查找入职员工时间排名倒数第三的员工所有信息
查看>>
使用join查询方式找出没有分类的电影id以及名称
查看>>
Qt教程(2) : Qt元对象系统
查看>>