Git 的 tag 功能是一个非常有用的工具,它可以帮助开发者在代码仓库中标记重要的里程碑和版本号。
Tag 可以看作是一个快照,用于永久性地标记提交记录。它们通常用于发布新版本或里程碑,并且可以帮助开发者追踪项目的历史记录。Tag 在 Git 中是轻量级对象,不会像分支那样占用额外的存储空间,因此创建 Tag 对存储的影响很小。
1.创建 tag
Git 支持两种 tag:轻量 tag(lightweight)与附注 tag(annotated)。
轻量 tag 很像一个不会改变的分支——它只是某个特定提交的引用。
而附注 tag 是存储在 Git 数据库中的一个完整对象,它们是可以被校验的,其中包含打 tag 者的名字、电子邮件地址、日期时间,此外还有一个 tag 信息,并且可以使用 GNU Privacy Guard(GPG)签名并验证。 通常会建议创建附注 tag,这样你可以拥有以上所有信息。但是如果你只是想用一个临时的 tag,或者因为某些原因不想要保存这些信息,那么也可以用轻量 tag。
1.1 附注 tag
要创建一个附注 tag,只需要你在执行 tag
命令时指定 -a
选项:
$ git tag -a v1.2.0 -m "version 1.2.0"
-m
选项指定了一条将会存储在 tag 中的信息。如果没有为附注 tag 指定一条信息,Git 会启动编辑器要求你输入信息。
通过使用 git show
命令可以看到 tag 信息和与之对应的提交信息:
$ git show v1.2.0
tag v1.2.0
Tagger: Oliver Zhou <my-email.com>
Date: Mon May 15 16:47:50 2023 +0800
version 1.2.0
commit 1a3870e3f700e98697d8fd5cc5f9835e5c78ecfc (HEAD -> main, tag: v1.2.0, origin/main)
Author: Oliver Zhou <my-email.com>
Date: Mon May 15 16:47:01 2023 +0800
feat: