Git 标签管理
标签(Tag)用于在Git历史中标记特定的提交,通常用于标记发布版本(v1.0.0)或重要的提交点。
创建标签
创建轻量标签
轻量标签只是一个特定的提交的引用,适合用于临时标记。
git tag v1.0.0
创建附注标签
附注标签是Git数据库中的完整对象,包含标签信息、标签者名字、邮箱和备注信息。推荐使用附注标签。
git tag -a v1.0.0 -m "版本 1.0.0 发布"
为历史提交打标签
git tag -a v0.9.0 -m "版本 0.9.0" a1b2c3d
列出标签
# 列出所有标签
git tag
# 列出符合模式的标签
git tag -l "v1.*"
# 显示标签详情
git show v1.0.0
删除标签
# 删除本地标签
git tag -d v1.0.0
# 删除远程标签
git push origin :refs/tags/v1.0.0
# 或者
git push origin --delete v1.0.0
推送标签到远程
# 推送单个标签
git push origin v1.0.0
# 推送所有标签
git push origin --tags
检出标签
检出标签会进入分离HEAD状态,修改不会产生新分支。
git checkout v1.0.0
如果需要在标签版本上进行修改,应该创建分支:
git checkout -b release-v1.0.0 v1.0.0
标签类型
| 类型 | 命令 | 说明 |
|---|---|---|
| 轻量标签 | git tag v1.0.0 | 简单的提交引用 |
| 附注标签 | git tag -a v1.0.0 -m "message" | 完整的标签对象 |
使用场景
- 版本发布:为每个发布版本打标签
- 重要里程碑:标记重要的功能完成点
- 回滚参考:为需要回滚的版本添加标签
最佳实践
- 使用语义化版本号(如 v1.0.0)
- 始终使用附注标签并添加说明
- 发布前打标签,便于后续查找
- 定期清理不需要的本地标签