🏷️ 第十四章:标签管理 —— 给历史打上"书签"
轻量标签 vs 附注标签
标签就像书签——给某个特定的提交起个好记的名字,通常用于标记版本号。
| 对比项 | 轻量标签 (Lightweight) | 附注标签 (Annotated) |
|---|---|---|
| 本质 | 只是一个指向提交的指针 | 一个独立的 Git 对象 |
| 包含信息 | 只有标签名 | 标签名、作者、日期、说明 |
| 适用场景 | 临时标记 | 正式发布版本(推荐) |
| 命令 | git tag v1.0 | git tag -a v1.0 -m "..." |
标签操作
bash
# 创建附注标签(推荐!)
git tag -a v1.0.0 -m "🎉 第一个正式版本"
# 创建轻量标签
git tag v1.0-beta
# 给历史提交打标签
git tag -a v0.1.0 a1b2c3d -m "第一个提交的标记"
# 查看所有标签
git tag
v0.1.0
v1.0-beta
v1.0.0
# 按模式搜索标签
git tag -l "v1.*"
v1.0-beta
v1.0.0
# 查看标签详情
git show v1.0.0
tag v1.0.0
Tagger: 小明 <xiaoming@example.com>
Date: Thu Jun 20 18:00:00 2025 +0800
🎉 第一个正式版本
commit f4e5d6c7a8b9c0d1e2f3a4b5c6d7e8f9a0b1c2d3 (HEAD -> main, tag: v1.0.0)
Author: 小明 <xiaoming@example.com>
Date: Thu Jun 20 10:30:00 2025 +0800
feat: 添加欢迎语
# 推送标签到远程
git push origin v1.0.0
# 推送所有标签
git push origin --tags
# 删除本地标签
git tag -d v1.0-beta
# 删除远程标签
git push origin --delete v1.0-beta