Git中tag标签的使用教程

 更新时间:2022年04月24日 13:58:13   作者:農碼一生  
这篇文章介绍了Git中tag标签的使用教程,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

一、tag简介

tag是git版本库的一个标记,指向某个commit的指针。
tag主要用于发布版本的管理,一个版本发布之后,我们可以为git打上 v.1.0.1 ,v.1.0.2 …这样的标签。
tag感觉跟branch有点相似,但是本质上和分工上是不同:
tag对应某次commit,是一个点,是不可移动的。
branch 对应一系列commit,是很多点连成的一根线,有一个HEAD 指针,是可以依靠 HEAD 指针移动的。
所以,两者的区别决定了使用方式,改动代码用 branch ,不改动只查看用 tag。
tag 和 branch 的相互配合使用,有时候起到非常方便的效果,例如:已经发布了 v1.0 v2.0 v3.0 三个版本,这个时候,我突然想不改现有代码的前提下,在 v2.0 的基础上加个新功能,作为 v4.0 发布。就可以检出 v2.0 的代码作为一个 branch ,然后作为开发分支。

二、tag使用命令

1、列出所有tag

git tag //默认显示
git tag -l
git tag -n //查看所有tag和说明
git tag -l v1.* //查看匹配到的tag
git ls-remote --tags origin //查看远程所有tag

2、查看tag信息

git show v1.0.1 //查看v1.0.1的内容

3、创建tag

git tag v2.0
git push origin //远程tag的创建

4、创建带注释tag

git tag -a v2.1 -m '第二版本'  ////-m 后跟的是注释信息, 当使用git show v2.1的时候, 会显示这个注释信息
git push origin //远程tag的创建

5、推送tag

git push origin [tagname] //推送到远程仓库
git push origin --tags //推送所有tag到远程仓库

6、特定commit_id创建tag

git log --pretty=oneline //查看当前分支的提交历史 里面包含 commit_id
git tag -a

7、删除tag

git tag -d //方式一
git tag -d [tagname] //方式二
git push origin :refs/tags/v1.0.2 //方式一:远程tag的删除
git push origin --delete <tagname> //方式二:远程tag的删除

8、检出tag

git checkout -b
//因为 tag 本身指向的就是一个 commit,所以和根据commit id 检出分支是一个道理。
//但是需要特别说明的是,如果我们想要修改 tag检出代码分支,那么虽然分支中的代码改变了,但是 tag标记的 commit还是同一个,标记的代码是不会变的,这个要格外的注意
git checkout -b branch_name tag_name //新建分支检出
//注意不要在检出标签后做修改和提交,会出现不必要的麻烦。正确的做法应该是创建一个新的分支,在新的分支上做修改和提交。

9、切换tag

git checkout [tagname] //切换到指定tag

10、为之前提交的添加tag

git log --pretty=oneline --abbrev-commit //第一步:找到提记录
git tag -a v3.1 [指定标签名] [commitID] //第二步:为记录创建tag
//git tag -a "v1.0.2" 9fbc3d0

11、重命名tag

//1.强制替换,再删除原有
git tag -f <new-tag> <old-tag>
git tag -d <old-tag>
//2.删除原有tag,重新添加
git tag -d <old-tag>
git tag -a <new-tag> -m"information"

到此这篇关于Git中tag使用教程的文章就介绍到这了。希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • Bottle部署web服务及postman接口的方法

    Bottle部署web服务及postman接口的方法

    这篇文章主要介绍了Bottle部署web服务及postman接口的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-01-01
  • 本地部署 torchchat的详细过程

    本地部署 torchchat的详细过程

    TorchChat 是一个小型代码库,展示了无缝运行大型语言模型 (LLMs) 的能力,使用 torchchat,您可以在自己的 (C/C++) 应用程序(桌面或服务器)以及 iOS 和 Android 上使用 Python 运行LLMs,这篇文章主要介绍了本地部署 torchchat,需要的朋友可以参考下
    2024-08-08
  • DeepSeek R1 Ollama本地化部署全攻略

    DeepSeek R1 Ollama本地化部署全攻略

    本文主要介绍了DeepSeek R1 Ollama本地化部署全攻略,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2025-03-03
  • MobaXterm详细使用图文教程(MobaXterm连接Linux服务器)

    MobaXterm详细使用图文教程(MobaXterm连接Linux服务器)

    这篇文章主要介绍了MobaXterm详细使用教程,介绍一下如何设置并用MobaXterm来连接Linux服务器,本文介绍了三种连接方式:SSH,FTP,serial,以及几个有用的设置和命令,需要的朋友可以参考下
    2023-05-05
  • 使用selenium自动控制浏览器找不到Chromedriver问题

    使用selenium自动控制浏览器找不到Chromedriver问题

    这篇文章主要介绍了ChromeDriver安装与配置问题的解决方法,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-02-02
  • ChatGpt无法访问或错误码1020的几种解决方案

    ChatGpt无法访问或错误码1020的几种解决方案

    ChatGPT是一种语言模型,它被训练来对对话进行建模,下面这篇文章主要给大家介绍了关于ChatGpt无法访问或错误码1020的几种解决方案,文中介绍的非常详细,需要的朋友可以参考下
    2023-02-02
  • EventStore文件存储设计详解

    EventStore文件存储设计详解

    ENode是一个CQRS+Event Sourcing架构的开发框架,这篇文章主要介绍了EventStore文件存储设计 ,需要的朋友可以参考下
    2019-05-05
  • IDM 6.40.11.2 弹窗的完美解决思路

    IDM 6.40.11.2 弹窗的完美解决思路

    找了一个和谐工具,运行和谐工具后,看IDM关于那里,已经是全功能版本,美中不足的是,IDM运行一段时间,就会弹出neg窗口,说文件被修改,最好是去官网下载原版的提示,就这个问题怎么处理呢?对IDM 6.40.11.2 弹窗的解决思路感兴趣的朋友跟随小编一起看看吧
    2023-01-01
  • gliffy UML工具安装使用过程

    gliffy UML工具安装使用过程

    这篇文章主要介绍了gliffy UML工具安装使用过程,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-02-02
  • Ollama整合open-webui的步骤及访问

    Ollama整合open-webui的步骤及访问

    这篇文章主要介绍了如何通过源码方式安装OpenWebUI,并详细说明了安装步骤、环境要求以及第一次使用时的账号注册和模型选择过程,需要的朋友可以参考下
    2025-02-02

最新评论