Git【标签操作】

目录

一、理解标签

二、创建标签

[2.1 给最新的提交打标签](#2.1 给最新的提交打标签)

[2.2 给指定的提交打标签](#2.2 给指定的提交打标签)

[2.3 创建带说明的标签(推荐)](#2.3 创建带说明的标签(推荐))

[2.4 查看所有标签](#2.4 查看所有标签)

[2.5 查看某个标签的详细信息](#2.5 查看某个标签的详细信息)

三、操作标签

[3.1 删除本地标签](#3.1 删除本地标签)

[3.2 推送标签到远程仓库](#3.2 推送标签到远程仓库)

[3.3 删除远程标签](#3.3 删除远程标签)

git log查看过那一长串的commit id。每次要回退到某个重要版本时,都需要翻出那串像乱码一样的commit id?

用一个简单易记的名字来代替它,那该多方便!

今天要介绍的就是Git的标签(Tag) 功能------它可以为某个特定的提交起一个有意义的名字,比如v1.0release-2023


一、理解标签

每次提交Git都会生成一个唯一的commit id(例97811abd1d43774aeb54fee32bf4fc76b2b08170)。虽然这个ID很精确,但对人来说太难记了。而标签就像给这个提交贴上一个"贴纸",你可以用v1.0这样的名字来代表那次提交。

标签的典型应用场景:

  • 发布版本 :比如软件正式发布时,打上v1.0.0的标签。

  • 里程碑节点 :完成一个重要功能,打上feature-login-done的标签。

  • 快速定位:需要回退到某个稳定版本时,直接用标签名,不用再找commit id。

二、创建标签

Git支持两种标签:轻量标签 (lightweight)和附注标签(annotated)。我们最常用的是附注标签,它可以附带说明信息。

2.1 给最新的提交打标签

如果你当前正在某个分支(比如master)上,并且想给最后一次提交打标签,直接运行:

这条命令会创建一个名为v1.0的标签,指向最新的提交。

2.2 给指定的提交打标签

如果你想给历史中的某次提交打标签,可以**先用git log找到它的commit id(通常只需前几位),**然后指定:

复制代码
git tag v0.9 c6ce3f0

这里c6ce3f0是某次提交的commit id前缀,Git会自动找到完整的提交。

2.3 创建带说明的标签(推荐)

为了让标签信息更丰富,可以用-a(annotated)和-m(message)参数:

复制代码
git tag -a v1.0 -m "第一个正式版本发布"

这样,标签就包含了一条说明,日后查看时会非常清晰。

2.4 查看所有标签

复制代码
git tag

这个命令会按字母顺序列出所有标签,而不是按时间顺序。

2.5 查看某个标签的详细信息

复制代码
git show v1.0

你会看到该标签对应的提交信息、作者、日期,以及附带的说明(如果有)。

三、操作标签

3.1 删除本地标签

如果标签打错了,或者不再需要,可以轻松删除:

复制代码
git tag -d v0.9

这条命令会从本地仓库中删除名为v0.9的标签**。注意,这只是删除本地的,远程仓库中可能还保留着。**

3.2 推送标签到远程仓库

默认情况下,git push并不会把标签推送到远程。你需要显式地推送标签:

复制代码
git push origin v1.0

如果你想一次性推送所有本地标签

复制代码
git push origin --tags

推送成功后,远程仓库(比如Gitee/GitHub)上也能看到这些标签。

3.3 删除远程标签

如果你已经推送了一个标签到远程,后来又想删除它,需要分两步:

  1. 先在本地删除:

    git tag -d v1.0

2.再删除远程的标签(注意命令格式):

复制代码
git push origin :refs/tags/v1.0

或者使用更简洁的写法:

复制代码
git push origin --delete v1.0
相关推荐
养肥胖虎2 小时前
Git提交规范笔记:feat和fix到底该怎么写
git·conventionalcommits
手握风云-2 小时前
深入 Git:它是如何记录世界的(二)
git
weixin_4334176717 小时前
TortoiseGit推送到远端,如何配置
windows·git
Hey_Coder1 天前
【Git 常用命令速查表(按功能分类)】
git·git基础命令·git命令速查表·git 常用命令
colman wang2 天前
Git指令(Mac)
git·macos
cyforkk2 天前
Git 合并分支提示 Already up to date 的真实原因
git
●VON2 天前
HarmonyKit | 移动端开发者工具类应用的现状与趋势
git·华为·性能优化·harmonyos·鸿蒙
●VON2 天前
HarmonyKit | 鸿蒙开发协作:如何为 HarmonyKit 贡献一个新的工具
git·华为·harmonyos·鸿蒙
枕星而眠2 天前
Git仓库基础用法
大数据·git·后端·elasticsearch·全文检索
梦想三三2 天前
Git与GitHub基础入门:从零开始掌握版本控制与代码托管(完整图文教程)
人工智能·git·elasticsearch·github