git-tag
Git 中的 tag 用于给某次提交打上标记,常用于发布版本,支持附加说明。
git-tag
git tag
git tag
是 Git 中用来给特定提交(commit)打上“标签”(Tag)的命令,主要用于标记版本发布点,便于版本管理和查找。
标签的类型
轻量标签(Lightweight Tag)
类似于一个不会变动的分支引用,只是给某个 commit 打个简单标记
不包含额外元信息(作者、日期、注释)
用法:
1
git tag v1.0.0
附注标签(Annotated Tag)
是一个完整的对象,包含标签名、作者、日期、标签说明文字等信息
推荐用于正式发布版本
用法:
1
git tag -a v1.0.0 -m "发布第一个正式版本"
常用命令详解
命令 | 说明 |
---|---|
git tag | 列出所有本地标签 |
git tag <tagname> | 创建轻量标签,默认打在当前分支最新提交上 |
git tag -a <tagname> -m "msg" | 创建带注释的标签,添加标签说明文字 |
git tag -d <tagname> | 删除本地标签 |
git show <tagname> | 查看标签详细信息(特别是附注标签) |
git push origin <tagname> | 推送指定标签到远程仓库 |
git push origin --tags | 推送所有本地标签到远程仓库 |
git checkout <tagname> | 切换到某个标签对应的代码状态(进入“detached HEAD”状态) |
给指定提交打标签
默认打标签是在当前 HEAD,如果想给历史提交打标签,可以指定 commit:
1
git tag -a v1.0.0 9fceb02 -m "发布第一个正式版本"
这里 9fceb02
是 commit 哈希值。
删除和推送标签
- 删除本地标签:
1
git tag -d v1.0.0
- 删除远程标签:
1
git push origin :refs/tags/v1.0.0
- 推送所有标签:
1
git push origin --tags
应用场景
- 版本发布:通过 Tag 标记每个发布版本(如
v1.0.0
、v2.0.0
),方便回溯和用户下载对应版本代码 - 打包触发:CI/CD 流程常以打 Tag 作为触发条件,自动构建发布包
- 代码对比:方便比较不同版本的代码差异
本文由作者按照 CC BY 4.0 进行授权