SVN 标签(十二)

12.标签

一、标签的作用

  • 为某个特定版本的代码赋予一个有意义的名称(如 v1.0​、release)。
  • 标记项目开发中的里程碑(例如发布版本、稳定版本)。
  • 标签是主干(或分支)在某个时间点的快照,通常不再修改

二、创建标签

标签通过 svn copy​ 命令创建,将主干(或分支)复制到 tags 目录下。

1.示例:为当前主干创建标签 v1.0

svn copy trunk/ tags/v1.0

输出:

A         tags/v1.0

2.查看生成的文件结构

ls tags/
v1.0

ls tags/v1.0/
HelloWorld.html  readme

3.查看状态

svn status
A  +    tags/v1.0
  • A + 表示计划添加到版本库,且带有历史记录(复制来源)。

三、提交标签到版本库

标签只有在提交后才会真正保存到版本库中。

svn commit -m "tags v1.0"

输出示例:

Adding         tags/v1.0
Transmitting file data ..
Committed revision 14.

四、标签与分支的区别

概念 用途 是否继续开发
分支(Branch) 并行开发新功能、修复 bug (可独立提交)
标签(Tag) 标记固定版本(如发布版) (通常只读)

注意:技术上标签和分支都是通过 svn copy​ 创建的副本,但标签一般约定为不再修改,仅用于回溯。

五、命令总结

操作 命令
创建标签 svn copy trunk/ tags/<标签名>
查看状态 svn status
提交标签 svn commit -m "标签注释"

六、最佳实践

  • 标签名建议使用有意义的版本号,如 v1.0.0​、release-20241107
  • 创建标签前确保工作副本已更新到要标记的版本(通常是主干或分支的最新提交)。
  • 标签一旦提交,不应再向其中添加修改;如需修复,应基于该标签创建分支进行修复,再打新标签。