SVN trunk branch tag

本文解析软件开发中trunk、branch和tag的基本概念,强调它们在项目管理和发布中的角色,帮助理解版本控制的最佳实践。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、基线(服务端默认划分3条基线)
trunk:表示开发时版本存放的目录,即在开发阶段的代码都提交到该目录上。
branch:表示发布的版本存放的目录,即项目上线时发布的稳定版本存放在该目录(个人认为:产品定制的版本,会增加维护成本)
tag:表示标签存放的目录。(个人认为:它也是一个完整的里程碑版本,不允许开发人员修改)

参考:https://wenku.baidu.com/view/ac48b2104431b90d6c85c756.html

资源中有 SVN 主干(trunk)、分支(branch )、标记(tag) 的详细解释,和作用 并带 SVN分支与合并 的详细操作文档(附图)。 SVN分支与合并的总结 1.分支(branche)的创建。 1、分支创建是建立在主干上的。 2、创建分支前将整个porject_name检出到本地,然后主干(trunk) 。 3、右键 选择 分支/标记 。 4、然后,在至路径输入:/branches/分支版本名称。 5、最后选择需要分支版本,点确认,这样分支就建立成功了。 6、再update porject_name就能在branches中看到,刚刚创建的分支版本。 7、当然如果要最该分支做修改,就要重新检出了:http://localhost/svn/porject_name/branches/分支版本名称 2.分支的合并 1、分支合并当然也是在主干上操作的。 2、修改完成后,检出整个porject_name到本地,选择主干(trunk) 3、右键 选择 合并(合并类型这里就不简介了文档中有详细介绍),选择第一个, 4、然后在合并源ULR中 选择需要合并的分支不版本URL,最后在范围写上需要合并的版本号(可以多个), 5、再下一步进行合并。 6、合并完成后,注意 主干(trunk) 是需要提交的,当然也有可能出现冲突。 3.标记(tags)的创建 标记的创建跟分支的差不多,但,标记是不能修改的,具体为什么请看文档, 设置标记目录权限时要设置成只读(当然除开标记创建者咯)。 4.分支(branche)的删除 删除跟删除其他目录是一样的操作。
### SVNBranchTagTrunk的概念及用途 #### Trunk概念与用途 Trunk 是项目的主干部分,代表了软件的主要开发方向。所有的主要功能开发都应在 Trunk 上进行。当一个模块完成开发并经过充分测试后,如果需要对其进行修改,则可以通过创建 Branch 来实现独立开发[^4]。 #### Branch概念与用途 Branch 表示分支,它是从 Trunk 或其他 Branch 中复制出来的独立开发路径。通过这种方式,开发者可以在不影响主干的情况下进行特定的功能开发或 Bug 修复工作。例如,在同时进行 2.0 版本开发和 1.0 版本的 Bug 修复时,可以分别在不同的 Branch 上开展工作,并定期将 Trunk 的更改合并到这些 Branch 中以保持一致性[^5]。 #### Tag概念与用途 Tag 主要用于标记某个特定的时间点或者已发布的稳定版本。尽管技术上它与 Branch 类似(都是基于拷贝的操作),但在实际应用中它的目的是记录历史状态而非继续发展。比如每次产品正式上线前都会打一个对应的 Tag 记录该次发布的内容;这样即使未来再有改动也能清楚知道之前的各个版本情况[^3]。 ```bash # 创建一个新的tag来表示v1.0.0这个稳定的发布版 svn copy http://svn.example.com/project/trunk \ http://svn.example.com/project/tags/v1.0.0 \ -m "Create a tag for the v1.0.0 release" ``` 以上命令展示了如何利用 `svn copy` 命令把当前最新的 Trunk 复制成 Tags 下的一个子目录作为固定的历史快照保存下来[^2]。 ### 总结 - **Trunk**: 负责承载整个项目的核心逻辑以及最新进展。 - **Branches**: 提供了一个隔离环境以便于处理复杂变更而无需担心影响整体稳定性。 - **Tags**: 定义不可变的关键里程碑, 如官方发行版本等.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值