我们在一些著名开源项目的版本库中,通常可以看到trunk, branches, tags等三个目录。由于SVN固有的特点,目录在SVN中并没有特别的意义,但是这三个目录却在大多数开源项目中存在,这是因为这三个目录反映了软件开发的通常模式。

  1. trunk是主分支,是日常开发进行的地方。

  2. branches是分支。一些阶段性的release版本,这些版本是可以继续进行开发和维护的,则放在branches目录中。又比如为不同用户客制化的版本,也可以放在分支中进行开发。

  3. tags目录一般是只读的,这里存储阶段性的发布版本,只是作为一个里程碑的版本进行存档。

例子:
比如一个项目有main.cpp, common.h两个文件,假设目前在开发的是最新的3.0版本,而且1.0/2.0版本也在进行维护,那么项目树将类似如下样子:

project|+-- trunk+     |+     +----- main.cpp  (3.0版本的最新文件)+     +----- common.h++-- branches+     |+     +-- r1.0+     +     |+     +     +---- main.cpp(1.x版本的最新文件)+     +     +---- common.h+     ++     +-- r2.0+           |+           +---- main.cpp(2.x版本的最新文件)+           +---- common.h++-- tags   (此目录只读)|+-- r1.0+     |+     +---- main.cpp(1.0版本的发布文件)+     +---- common.h++-- r1.1+     |+     +---- main.cpp(1.1版本的发布文件)+     +---- common.h++-- r1.2+     |+     +---- main.cpp(1.2版本的发布文件)+     +---- common.h++-- r1.3+     |+     +---- main.cpp(1.3版本的发布文件)+     +---- common.h++-- r2.0+     |+     +---- main.cpp(2.0版本的发布文件)+     +---- common.h++-- r2.1|+---- main.cpp(2.1版本的发布文件)+---- common.h

要使用这样的文件夹结构,在建立项目版本库时,可首先建好项目文件夹,并在其中建立trunk, branches, tags三个空的子目录,再将项目文件夹连同这三个子目录一起导入版本库。

这样在trunk中开始进行开发,当需要建立branch或tag时,使用SVN的copy操作进行。

其中tags目录需要只读,可以使用SVN中的authz文件控制该目录的访问权限为只读。

参考大佬文章链接
链接:https://www.jianshu.com/p/909b6aaa1f9a

菜鸟不是知识的生产者,却是知识的搬运工

SVN的目录结构,trunk、tag、branches相关推荐

  1. svn 目录结构 trunk java_svn代码版本管理

    1.0开发,做dev1.0的branch 此时的目录结构 svn://proj/ +trunk/ (不负担开发任务) +branches/ +dev_1.0 (copy from trunk) +ta ...

  2. svn 目录结构 trunk java_如何彻底删除SVN中的文件和文件夹(附恢复方法)

    这里假设SVN项目的目录为 /data/svn/project,我们想排除trunk/test.exe文件和trunk/notallowed/目录,操作步骤如下及执行的svn命令(在svn安装目录的b ...

  3. SVN的目录结构介绍和版本管理方式

    1 SVN标准目录 Subversion有一个很标准的目录结构,是这样的.比如项目是proj,svn地址为svn://proj/,那么标准的svn布局是: 这是一个标准的布局,trunk为主开发目录, ...

  4. 工程linux下创建svn仓库目录结构

    查了好多资料,发现还是不全,干脆自己整理吧,至少保证在我的做法正确的,以免误导读者,也是给自己做个记录吧! 第一步: mkdir -p {xxx/{trunk/{bin,doc,src/{bootlo ...

  5. SVN中trunk、branches、tag的使用

    我相信初学开发在SVN作为版本管理时,都估计没可能考虑到如何灵活的运用SVN来管理开发代码的版本,下面我就摘录一篇文章来简单说明SVN里的trunk,branched,tags这个三个文件目录的用法. ...

  6. SVN目录结构及作用

    SVN规范 SVN目录规范 在visualSVN中创建仓库时,可以选择svn目录结构 Trunk 主干目录,此目录下的文件为基准文件 Branches 用于开发的分支目录 Tags 用于发布的版本目录 ...

  7. svn 分支(branch)和标签(tag)管理

    版本控制的一大功能是可以隔离变化在某个开发线上,这个开发线就是分支(branch). 分支通常用于开发新功能,而不会影响主干的开发.也就是说分支上的代码的编译错误.bug不会对主干(trunk)产生影 ...

  8. 【SVN】SVN的trunk、branches、tag的使用以及分支的概念

    SVN命令参考: https://www.cnblogs.com/wlsxmhz/p/5775393.html svn的存储结构一般建议在根目录下建立trunk.branches.tags这三个文件夹 ...

  9. 关于SVN 目录结构

    Subversion有一个很标准的目录结构,是这样的.比如项目是proj,svn地址为svn://proj/,那么标准的svn布局是 svn://proj/    |    +-trunk    +- ...

  10. 【物联网】OpenWrt OpenWRT的源码下载及目录结构

    OpenWRT的源码下载及目录结构 OpenWrt的源代码管理默认用的是SVN下载: svn co svn://svn.openwrt.org/openwrt/trunk/ . 还可以用Git下载: ...

最新文章

  1. 数据结构之跳表Skiplist
  2. 《大道至简》第一章编程的精义伪代码读后感
  3. MD5 Library in .NET
  4. 计算机模拟热处理,计算机模拟在热处理中的应用
  5. display函数怎么使用_损失函数—深度学习常见损失函数总结【图像分类|上】
  6. SQL提取时间段内数据
  7. 实现 npm script 命令自动补全
  8. php 万能表,手把手教你,如何使用数字万用表!
  9. TCP/IP协议(2):各层网络设备
  10. laravel:如何快速实现数据填充,创建模拟数据(使用seeder)
  11. 2021-2027全球与中国天然眼部卸妆产品市场现状及未来发展趋势
  12. sis防屏蔽程序_智能化弱电工程屏蔽机房基础知识
  13. idea安装SVN插件并使用
  14. 机器学习实战- 回归(Regression) 概述
  15. 游戏低延迟高续航真无线蓝牙耳机,小巧便捷出差旅行必备
  16. win10系统 该文件没有与之关联的应用来执行该操作,请安装应用,若已经安装应用,请在“默认应用设计“页面中创建关联
  17. Ubuntu上使用微信
  18. 计算机图形学 学习笔记(八):三维图形变换:三维几何变换,投影变换(平行/ 透视 投影)
  19. 敏捷软件开发经理的5个职责
  20. USB摄像头方案及应用

热门文章

  1. 线性代数让我想想:两步得到二阶矩阵的逆
  2. 内存超频时序怎么调_一个傻瓜式内存超频教程
  3. JDK8环境配置教程
  4. matlab为数据加表头,matlab xlswrite 表头
  5. 2018DeeCamp笔试题目第2套A卷
  6. 课题:交通标志识别——设计思路与实现步骤记录
  7. python合并excel工作簿_使用python将excel工作簿工作表合并为一个工作表
  8. Matlab读取excel文件绘制折线图
  9. win10WIFI图标消失,只显示一个带红叉的窗口(或者飞行模式的符号)
  10. win10系统wifi图标不见了,如何链接无线网