Menu
CoddyTech

Git Tag

最后更新

git tag 给某个特定提交起一个名字,通常是 v1.0.0 这样的发布版本号。标签有两种:轻量标签(只是一个指向提交的名字)和附注标签(一个带有说明信息、作者和日期的完整对象)。标签不会被自动推送,需要单独推送。

在终端在线编辑器中试试这些命令:浏览器里就是真正的 shell,无需安装。

git tag 给某个提交钉上一个永久名称,比如 v1.0;分支继续前进,标签留在原处。

语法

命令作用
git tag v1.0.0在 HEAD 上创建轻量标签
git tag -a v1.0.0 -m "Release 1.0"创建带说明信息的附注标签
git tag -a v1.0.0 <hash>给过去的某个提交打标签
git tag列出所有标签
git push origin v1.0.0把一个标签推送到远程
git push --tags推送所有标签
git tag -d v1.0.0删除本地标签

轻量标签与附注标签

方面轻量标签附注标签
保存说明信息否是
记录作者和日期否是
适合用于发布否是

git tag 常见问题

Git 怎么创建标签?
想快速做个标记,运行 git tag <name>(在当前提交上创建轻量标签)。用于发布时,创建附注标签:git tag -a v1.0.0 -m "Release 1.0",它会保存说明信息、作者和日期。在命令末尾加上提交哈希值,就能给较早的提交打标签。
轻量标签和附注标签有什么区别?

轻量标签只是一个指向提交的名字,没有额外数据。附注标签是一个完整的 Git 对象,包含说明信息、打标签者的名字和日期,并且可以被验证。发布版本请用附注标签;临时或私人的标记用轻量标签就够了。

怎么把标签推送到远程?
普通的 git push 不会包含标签。用 git push origin <tagname> 推送指定标签,或用 git push --tags 一次推送所有标签。很多人在这里踩坑:你创建的标签在推送之前一直只存在于本地。
怎么删除标签?
用 git tag -d <tagname> 删除本地标签。要同时从远程删除,运行 git push origin --delete <tagname>(或较老的写法 git push origin :refs/tags/<tagname>)。删除本地标签和远程标签是两个独立的步骤。
可以在线练习吗?
可以。打开终端在线编辑器,就能在浏览器里的真实 shell 中运行 git tag,无需安装。Coddy 的免费互动 Git 课程也会一步步教你打标签和发布版本。
Coddy 编程语言插图

在 Coddy 学习 Git

开始