Git tag使用

tag常被称作里程碑,发版Release时用到。

一、怎么添加tag?

问 : 刚修改完代码 还未 Commit 可以直接 git tag v2.4.6.1 -m "[Update]更新proxy@379ac539"吗?
答: 不可以,git tag 命令是用来给已经存在于 Git 历史中的提交打标签的。如果你刚刚修改了代码但还没有进行提交,那么这些更改尚未成为 Git 历史的一部分,因此你还不能对其打标签。

你必须首先通过 git commit 命令将更改提交到本地仓库中。提交之后,你就可以给这个新的提交打标签了。以下是正确的步骤:

  1. 添加更改到暂存区:

    git add .
    

    或者只添加特定文件:

    git add <file1> <file2>
    
  2. 提交更改:

    git commit -m "你的提交信息"
    
  3. 创建标签:

    git tag v2.4.6.1 -m "[Update]更新proxy@379ac539"
    
  4. 推送标签到远程仓库(可选):

    git push origin v2.4.6.1
    

确保在执行 git tag 命令之前,你已经成功地将你的更改提交到了本地仓库。如果你希望包含的提交是最新的提交,那么你可以直接创建标签而不需要指定具体的提交哈希值;Git 会自动使用最新的提交。

二、怎么查看已有tag?

例如查看 v开头的tag

方式一
git tag -n1 -l 'v*' 这条命令是用于列出和显示 Git 仓库中所有以 ‘v’ 开头的标签(tags)及其对应注解的第一行。

命令的各个部分含义如下:

  • git tag: 这是 git 的子命令,用于创建、列出、删除或验证一个项目的标签。

  • -n1: 这个选项告诉 git tag 命令显示每个标签的注解消息。数字 1 指定只显示每个标签注解的第一行。如果你使用 -n2,它将显示注解的前两行,以此类推。

  • -l: 这是“list”的缩写,用于列出符合条件的标签。

  • 'v*': 这是一个模式匹配表达式,* 是通配符,表示匹配任意字符。这里的 v* 将会匹配所有以字母 ‘v’ 开头的标签。这常用于版本标签,例如 v1.0.0v1.1.0 等。

综上,这条命令的作用就是列出当前 Git 仓库中所有以 ‘v’ 开头的标签,并且对于每个标签,只显示其注解的第一行内容。这种格式通常用于查看版本历史和相关的发布注解简介。

方式二:
git tag --list|grep 'v'

三、如何查看远端的tag?

要查看远端仓库的标签列表,可以使用git ls-remote命令,并附加--tags选项。这将列出所有远端仓库中的标签。

打开终端或命令行界面并运行以下命令:

git ls-remote --tags origin

请注意,这里origin是远端仓库的默认名称。如果你的远端仓库有不同的名称,请将origin替换为实际的远端仓库名称。

该命令将输出类似于以下格式的内容:

<commit-hash>	refs/tags/v1.0.0
<commit-hash>	refs/tags/v1.0.1
<commit-hash>	refs/tags/v2.4.7
...

每行将显示一个标签的提交哈希和标签名称。这样就可以查看远端仓库中所有的标签了。

四、修改tag

问题: 如果git tag v2.4.7推送到远端 代码仍需修改,修改代码后 才能是v2.4.7 代码改好了 怎么修改tag v2.4.7?

答: 如果已经推送了一个git tag到远端,但后来发现需要对代码进行更改,然后再次将这些改动标记为相同的版本(在本例中是v2.4.7),你需要执行以下几步:

  1. 删除远端标签

    git push --delete origin v2.4.7
    
  2. 删除本地标签

    git tag --delete v2.4.7
    
  3. 进行必要的代码修改,并提交这些修改。

  4. 重新创建标签

    git tag v2.4.7
    
  5. 推送新标签到远端

    git push origin v2.4.7
    

请确保在重新创建和推送标签之前,所有必要的代码更改都已经提交到仓库。重新推送相同名称的标签可能会引起其他使用该仓库的开发者的困扰,因为他们可能需要更新自己的本地标签。通常,最好是避免更改已经发布的标签,除非绝对必要,而且要确保所有团队成员都意识到这一变化。

另外,如果你的仓库有基于标签的触发机制(例如自动部署),那么重新推送标签可能会触发这些流程,所以在执行这些操作之前,请确认这样做不会造成意外的副作用。

  • 9
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值