当前位置:首页 > 编程技术 > 正文内容

git tag 命令详解

yc8882年前 (2022-12-16)编程技术933

git tag 命令详解

1. 标签介绍


应用场景

当我们发布版本时,通常会先在版本库打一个标签,这个标签就是我们平时所说代码仓库的版本号

标签是版本库的一个快照,但它其实就是指向某个 commit 的指针。所以,创建和删除标签都是瞬间完成的

git 有 commit ,为什么还要引入 tag ?

“请把上周一的那个版本打包发布,commit号是 6a5819e…”

“一串乱七八糟的数字不好找!”

如果换一个办法:

“请把上周一的那个版本打包发布,版本号是v1.2”

“好的,按照tag v1.2查找commit就行!”

所以,tag 就是一个让人容易记住的有意义的名字,它跟某个 commit 绑在一起。

2. 查看标签


  1. # 查看所有标签
  2. git tag
  3. # 一行显示多个标签
  4. git tag --column

3. 创建标签


创建标签

  1. # 基于当前 commit id 创建标签
  2. git tag <tagname>
  3. # 基于指定 commit id 创建标签
  4. git tag <tagname> <commit id>

创建标签并且添加标签描述(如果不带 -m 参数会进入 vi 编辑模式输入标签描述)

  1. # `-a, --annotate` 标签名 `-m, --message` 标签描述
  2. git tag -a <tagname> -m <message>
  3. # 经测试,-a 不写也是可以的
  4. git tag <tagname> -m <message>

使用示例

  1. # 添加标签
  2. git tag v1.0.0
  3. # 创建标签并设置标签描述
  4. git tag v1.0.0 -m '正式上线'
  5. git tag -a v1.0.0 -m '正式上线'

4. 删除标签


如果标签打错了,可以删除标签

因为创建的标签都只存储在本地,不会自动推送到远程。所以,打错的标签可以在本地安全删除

要看看是否真的从远程库删除了标签,可以登录远程仓库查看,比如: Gitee、GitHub

  1. # 删除本地标签
  2. git tag -d v1.0.0
  3. # 删除远程库标签
  4. git push origin :v1.0.0
  5. git push origin :refs/tags/v1.0.0

5. 推送标签


本地标签推送到远程仓库

  1. # 将某个标签推送到远程仓库
  2. git push origin v1.0.0
  3. # 一次性推送全部尚未推送到远程的本地标签
  4. git push origin --tags

6. git show 查看标签


查看标签以及指向的对象。其实就是查看标签的备注和对应的提交记录

  1. git show v1.0.0

查看标签指向的树。其实就是查看标签下的文件

  1. git show v1.0.0^{tree}

查看标签对应提交记录的备注信息

  1. git show -s --format=%s v1.0.0^{commit}

本站发布的内容若侵犯到您的权益,请邮件联系站长删除,我们将及时处理!


从您进入本站开始,已表示您已同意接受本站【免责声明】中的一切条款!


本站大部分下载资源收集于网络,不保证其完整性以及安全性,请下载后自行研究。


本站资源仅供学习和交流使用,版权归原作者所有,请勿商业运营、违法使用和传播!请在下载后24小时之内自觉删除。


若作商业用途,请购买正版,由于未及时购买和付费发生的侵权行为,使用者自行承担,概与本站无关。


本文链接:https://www.10zhan.com/biancheng/10232.html

标签: git
分享给朋友:

“git tag 命令详解” 的相关文章

【说站】laravel实现自定义404页面并给页面传值

【说站】laravel实现自定义404页面并给页面传值

以 laravel5.8 为例,虽然有自带的404页面,但太简单,我们更希望能自定义404页面,将用户留在站点。实现的方式很简单,将自定义的视图文件命名为 404.blade.php,并放到 reso...

【说站】用一句话就可以去除宝塔面板操作上的二次验证

【说站】用一句话就可以去除宝塔面板操作上的二次验证

用过宝塔的朋友应该都会发现,现在宝塔面板有些鸡肋的功能,删除文件、删除数据库、删除站点等操作都需要做计算题!不仅加了几秒的延时等待,还无法跳过!这时候就会有朋友在想,如何去除宝塔面板的二次验证,此篇文...

【说站】Centos8.0如何配置静态IP详解及永久关闭防火墙

【说站】Centos8.0如何配置静态IP详解及永久关闭防火墙

这篇文章主要介绍了详解Centos8 配置静态IP的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来学习一下!1. 查看自己的网关地址点击虚...

【说站】vagrant实现linux虚拟机的安装并配置网络

【说站】vagrant实现linux虚拟机的安装并配置网络

一、VirtualBox的下载和安装1、下载VirtualBox官网下载:https://www.virtualbox.org/wiki/Downloads我的电脑是Windows的,所以下载Wind...

【说站】Java从resources读取文件内容的方法有哪些

【说站】Java从resources读取文件内容的方法有哪些

本文主要介绍的是java读取resource目录下文件的方法,比如这是你的src目录的结构├── main│ ├── java│ │ └── ...

【说站】linux中redis如何以redis用户重启?

【说站】linux中redis如何以redis用户重启?

通过上图我们可以看到,目前状态是已经以 redis 用户启动着,我想修改下 redis 的密码,然后怎么以 redis 用户重启呢?redis 是 nologin 用户,不能通过 su redis 切...