git tag详解

这篇具有很好参考价值的文章主要介绍了git tag详解。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。


前言

通常我们在生产环境发版时,创建一个 tag,这样一个不可修改的版本将被冻结起来,这对于发布或者版本管理非常有益。


1. Git tag的基本概念和用法

1.1. 什么是 Git tag?

Git 中,tag是标记存储库历史记录中特定提交的一种方式。tag通常用于标记项目的特定版本,例如版本 1.02.0

1.2. Git 标签有什么作用?

tag可以用于指定在仓库历史记录的某个特定点上创建的版本,这在软件开发中非常有用。如果需要在软件发布时创建tag,开发人员就可以跟踪哪个版本用于真实世界中的生产环境。在软件开发中,tag还可以用于标记里程碑特定功能的实现

除此之外,tag还可以用于将存储库中的提交版本控制系统中的标记关联。这可以用于确保特定版本的软件与存储库中的特定提交相关联。在软件开发中,这可以用于确保特定版本的软件与单独的存储库分支相关联


2. 创建 Git tag

可以使用消息创建带注释的 tag,也可以创建不带消息的轻量级 tag。带注释的 tag 包括 tag 的名称、电子邮件和日期等信息,而轻量级 tag 仅是对特定提交的指针。

2.1. 创建轻量级tag

运行 git tag [tagname] 命令,后跟标签的名称。例如,git tag v2.0 将创建一个名为 “v2.0” 的轻量级标签。

git tag,git,git

2.2. 创建带有注释的tag

运行 git tag -a [tagname] 命令,后跟引号中的消息。例如,git tag -a v1.0 -m "Initial release" 将创建一个名为 “v1.0” 并带有 “Initial release” 消息注释的标签。

运行 git show [tagname] 命令,可以查看标签的详细信息,包含注释、作者、邮箱、创建日期等信息
git tag,git,git

2.3. 编辑已有的tag

运行 git tag -f [tagname] 命令,后跟新的提交哈希或分支名称。例如,git tag -f v1.0 [new-commit-hash] 将把“v1.0”标签移动到新提交。或者,git tag -f v1.0 [new-branch-name] 将标签移动到新分支的末尾。

git tag,git,git


3. 列出和检出 Git tag

3.1. 列出所有tag

运行 git tag 命令。例如,git tag 将列出所有本地标签。如果要查看远程存储库中的标签,可以使用 git ls-remote --tags [remote] 命令。例如,git ls-remote --tags origin 将列出名为 origin 的远程存储库中的所有标签。
git tag,git,git

3.3. 列出匹配的tag

运行 git tag -l [pattern] 命令。例如,git tag -l v1.* 将列出所有以 “v1.” 开头的标签。

git tag,git,git

3.4. 检出tag

要检出 Git 标签,可以使用 git checkout [tagname] 命令。例如,要检出名为 “v1.0” 的标签,请运行 git checkout v1.0 命令。

检出标签将使存储库进入 “游离 HEAD” 状态,这意味着所做的任何更改都不会与分支相关联。如果要在标签上进行更改,可以创建一个新的分支来进行更改,以避免对标签进行更改并破坏历史记录。


4. 将 Git tag推送到远程存储库

4.1. 推送单个tag

运行 git push origin [tagname]。例如,要将标签“v1.0”推送到远程仓库,请使用命令 git push origin v1.0

git tag,git,git
运行 git ls-remote 查看远程标签。可以看到v1.0已经成功推送到远程仓库。
git tag,git,git

4.2. 推送所有tag

运行 git push --tags。这将推送所有尚未在远程仓库上的本地标签。
git tag,git,git
此时我们可以在仓库看到本地的tag已经被推送过来了。
git tag,git,git

4.3. 删除远程tag

要删除远程 Git 标签,需要使用 git push 命令,后跟 --delete 选项和标签名称。例如,要删除名为 v1.0 的标签,可以运行以下命令:git push --delete origin v1.0。这将从远程存储库中删除标签。
git tag,git,git

请注意,如果您删除了远程标签,那么需要确保本地存储库中也删除了它。您可以使用 git tag -d [tagname] 命令来删除本地标签。例如,要删除名为 v1.0 的标签,可以运行以下命令:git tag -d v1.0
git tag,git,git


5. Git tag高级用法

5.1. 签名tag

要为 Git 标签签名,可以使用 git tag -s [tagname] 命令,并使用你的 GPG 密钥对标签进行签名。例如,git tag -s v1.0 将使用您的 GPG 密钥对名为 “v1.0” 的标签进行签名。
git tag,git,git
如果报错No secret key,解决方法:在Git Bash终端配置gpg程序位置
git tag,git,git

编辑完成后:wq保存退出即可。

git tag,git,git

要验证签名的 Git 标签,请使用 git tag -v [tagname] 命令。例如,git tag -v v1.0 将验证名为 “v1.0” 的标签的签名,并显示签名者和提交 ID 等信息。如果您想验证未标记的提交,可以使用提交哈希代替标记名称,例如,您可以运行git verify-commit [commit-hash]直接验证提交,而不是运行git tag -v [tagname]
git tag,git,git

签名标签可以帮助确保标签的完整性和来源,因此它们特别适用于需要进行身份验证或需要进行安全审计的软件项目。


注意:如果报错了,请确保已经安装GPG,并且密钥已正确配置

请按照以下步骤安装并配置 GPG

  1. 在您的操作系统上打开终端命令提示符
  2. 输入以下命令以安装 GPG
  • 如果你使用的是 macOS,可以使用 Homebrew 包管理器安装 GPG

    brew install gnupg
    
  • 如果你使用的是 Linux,可以使用你的包管理器安装 GPG。例如,在 Ubuntu 上,可以使用以下命令:

    sudo apt-get install gnupg
    
  • 如果你使用的是 Windows,可以从 Gpg4win 官方网站下载并安装 Gpg4win:https://gpg4win.org/download.html

  1. 安装完成后,你可以验证 GPG 是否正确安装,可以在终端上运行以下命令:

    gpg --version
    

    如果你正确安装了 GPG,你应该会看到版本号和其他信息。
    git tag,git,git

  2. 配置密钥
    1.使用gpg --gen-key命令生成一个新的GPG密钥。这会打开一个提示,您可以在其中输入有关密钥的信息,例如您的姓名和电子邮件地址。
    2.生成密钥后,您可以使用gpg --list-keys命令列出您的密钥。这将显示您密钥的指纹,您稍后需要使用它。
    3.使用gpg --export --armor [你的钥匙指纹]命令导出您的GPG公钥。这将以ASCII装甲格式输出您的公钥,您可以将其复制并粘贴到Git托管服务中。

    git tag,git,git

    ok,配置成功
    git tag,git,git

    4.通过运行以下命令配置Git使用您的GPG密钥:

    git config --global user.signingkey [你的钥匙指纹]
    git config --global commit.gpgsign true
    

    运行git config --list查看user.signingkey是否配置成功。

    git tag,git,git

    这些命令将告诉Git使用您的GPG密钥来签署您的提交。


5.2. tag过滤

要过滤 git 标签,请使用 git tag 命令的 --list 选项,后跟一个模式。例如,要列出以“v1.”开头的所有标记,请运行以下命令:

git tag --list 'v1.*'

这将列出所有以“v1.”开头的标记,例如“v1.0”、“v1.1”等。

你还可以使用 --contains 选项来列出包含指定提交的标记。例如,要列出包含提交 abc123 的所有标记,请运行以下命令:

git tag --contains abc123

这将列出所有包含提交 abc123 的标记。

5.3. 访问tag历史记录

要访问Git标签的历史记录,您可以使用git tag命令,带有--list选项和--sort选项,后跟version:refname以按版本号对标签进行排序。例如,要按时间顺序列出标签,您可以运行以下命令:

git tag --list --sort=-v:refname

这将以相反的时间顺序列出所有标签,并将最新的标签列在第一位。

git tag,git,git

您还可以通过添加--max-count选项,后跟要显示的标签数,来限制列出的标签数。例如,要列出最近的10个标签,可以运行以下命令:

git tag --list --sort=-v:refname --max-count=10

这将以相反的时间顺序列出最近的10个标签。文章来源地址https://www.toymoban.com/news/detail-653356.html

到了这里,关于git tag详解的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Git系列之git tag

    Git可给仓库历史中的某一个提交打上标签,常用于标记发布结点。 本文使用的Git版本为: 列出全部标签的命令为: git tag 或 git tag -l 或 git tag -list ,即 -l 或 -list 选项是可选的, git tag ,即默认列出全部标签,以字母顺序排序。 查找某些特定标签的命令: git tag -l \\\"release*\\\"

    2024年02月11日
    浏览(59)
  • git拉取指定 tag 版本/切换指定tag代码

    git clone 指定的tag 已有仓库切换 tag 注意这时候git会提示你目前处于detached HEAD的状态,因为tag相当于一个快照,不能修改他的代码,如果想要在这个tag的代码基础上进行开发,则根据tag创建一个新的分支 git tags 和 Branches的区别 Git中的tag和branch区别和使用

    2024年02月15日
    浏览(45)
  • 项目如何打tag(如何使用git的tag命令)

    在项目中打 tag 可以使用 Git 的 tag 命令来实现。下面是具体的步骤: 1、进入项目目录 在终端中进入项目的根目录。 2、确认当前分支 使用 git branch 命令确认当前所在的分支。如果不是想要打 tag 的分支,可以使用 git checkout 命令切换到目标分支。 3、打 tag 使用 git tag 命令来

    2024年02月04日
    浏览(39)
  • 【git、gerrit】git 使用tag

    常常为发布上线某个版本打上一个标签,表示这是什么版本,这样后续找起来就很方便。 如果没有标签只能通过commit历史去查找,而且commit版本显示的都是一串2dad2sdfa字符串。 tag操作本质是对某次commit进行额外的打标签,因此依附于某次commit ,甚至可以一一对应 首先要切换

    2024年02月05日
    浏览(38)
  • Git学习笔记:3 git tag命令

    git tag 是 Git 中用于管理和操作标签(tag)的命令。标签在Git中主要用于标记特定的提交,通常用来标识重要的版本发布点,如v1.0.0、v2.1.5等。 创建一个轻量标签(不包含额外信息): 创建一个带有注释的annotated标签(推荐使用,因为它可以存储更多元数据和PGP签名): 列出

    2024年01月25日
    浏览(42)
  • Git:打标签tag

    在开发的过程中经常需要为某个版本打上标签tag,作为一个记录,当需要的时候可以快速的找到这个标签,并进行切换,一下是一些常用的标签操作。 1.在本地创建标签 git tag 标签名 2.创建带有注释的标签 git tag -a tagName -m \\\"my tag\\\" 3.将标签推送到远端 git push origin 标签名 4.删除

    2024年02月08日
    浏览(48)
  • Git tag使用

    tag常被称作里程碑,发版Release时用到。 怎么添加tag? 问 : 刚修改完代码 还未 Commit 可以直接 git tag v2.4.6.1 -m \\\"[Update]更新proxy@379ac539\\\"吗? 答: 不可以, git tag 命令是用来给已经存在于 Git 历史中的提交打标签的。如果你刚刚修改了代码但还没有进行提交,那么这些更改尚未

    2024年01月20日
    浏览(43)
  • Git tag的用法

    如果以git 仓库中最新代码或者历史某次提交为基准释放一版软件,出完之后,继续开发后面的工作;那么释放软件之后过了一段时间,会很容易忘记当时这版软件是基于哪次提交的,所以为了便于记录,可以利用git tag命令在释放软件时,在释放软件的那次提交上打个标签,

    2024年02月09日
    浏览(43)
  • git tag相关

    git tag创建、远程推送、回退以及强推push -f_苦咖啡-coffe的博客-CSDN博客_git tag 一、给本地仓库分支打轻量级tag标签 1、在Git中打标签非常简单,首先,切换到需要打标签的分支上: $ git branch   devwhd   gray * master   optimize_sel_driver_20170911   pre_production 2、然后,敲命令git tag name就可

    2023年04月08日
    浏览(21)
  • git 使用tag

    常常为发布上线某个版本打上一个标签,表示这是什么版本,这样后续找起来就很方便。 如果没有标签只能通过commit历史去查找,而且commit版本显示的都是一串2dad2sdfa字符串。 tag操作本质是对某次commit进行额外的打标签,因此依附于某次commit ,甚至可以一一对应 首先要切换

    2024年02月04日
    浏览(34)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包