标签tag
标签是 git 中用于给某个特定提交打标签的命令。标签通常用于标记重要的里程碑,如软件发布版本。
标签版本管理用法
- 使用标签标记版本:
- 使用Git标签(tag)来标记重要的版本,如发布版本、里程碑版本等。
- 标签是静态的,指向某个特定的提交,不会随着代码的更改而移动。
- 命名规范:
- 使用语义化版本控制(Semantic Versioning,简称SemVer)来命名标签,如
v1.0.0、v1.1.0等。 - SemVer规定了版本号由主版本号、次版本号和补丁版本号组成,并定义了它们的含义和更新规则。
- 使用语义化版本控制(Semantic Versioning,简称SemVer)来命名标签,如
- 发布新版本时打标签:
- 当准备发布新版本时,在主分支上打上相应的标签,并发布到生产环境。
- 管理标签:
- 定期检查和更新标签列表,确保标签的准确性和完整性。
- 如有需要,可以删除或重新打标签。但请注意,重新打标签可能会导致混淆和不一致性,因此应谨慎操作。
使用
列出所有标签
bash
git tag创建一个轻量级标签,轻量级标签直接指向某个提交对象,不包含其他信息。
bash
# 给当前 HEAD 指向的提交打标签 1.0.0
git tag 1.0.0创建一个带注释的标签,带注释的标签存储了关于该标签的额外信息,通常建议使用这种标签,因为它包含了更多的元数据。
bash
git tag -a 1.0.0 -m "版本 1.0.0 发布"创建标签并指定提交的哈希值,如果你想要给过去的某个提交打标签,可以使用提交的哈希值。
bash
# git tag <tagname> <commit-hash>
git tag 1.0.0 abcdef1删除本地标签
bash
git tag -d 1.0.0删除远程仓库的标签
bash
git push origin -d 1.0.0推送标签到远程仓库,默认情况下,git push 不会推送标签。你需要明确指定要推送的标签。
bash
# 推送单个标签
git push origin 1.0.0
# 推送所有标签
git push origin --tags检出标签,虽然标签通常用于标记特定的提交,但你也可以检出一个标签,这会将你的工作目录切换到该标签所指向的提交状态。但请注意,这不会创建一个新的分支。
bash
git checkout 1.0.0基于 1.0.0 标签创建一个名为 v1.0.0 的新分支
bash
git checkout -b v1.0.0 1.0.0