首页 » 信息技术 »

总结git tag相关操作

2020年4月3日 / 35次阅读
Git

git中的tag概念,其实就是一般我们确定版本时的动作,在某一个commit上打一个tag,就表示这个地方是某一个版本。需要注意的是,git中只有tag,没有release,release是github的概念。release是在tag上再包了一层而已,作者可以在release中绑定安装程序等更多的资料。我们向github push tag后,在github项目中,就能看到多了一个release。tag就是简化的release。

下面将涉及到git tag的相关操作做一个总结。

新建一个tag

$ git tag tagName

这个操作会在当前的commit上打上tag标签。

新建一个带注释的tag

普通tag没有注释,查看此tag的详细信息,显示的就是tag对应的commit的信息。

$ git tag -a tagName -m 'tag specific info'

给过往的commit打tag

有的时候commit的太快,而我们需要对过去的commit打上tag。

$ git tag tagName commit-SHA-1

比如:git tag v1.1.1 03f9885  # 03f9885就是那个过往的commit的SHA-1值的前7位。

给过往的commit打上带注释的tag

$ git tag -a tagName commit-SHA-1 -m 'tag annotation'

删除本地tag

$ git tag -d tagName

推送全部tag到远端服务器

这里有个重要的概念,git在push代码的时候,不会自动push tag,tag是附加在commit上的信息,需要单独push。

$ git push origin --tags

这个命令会将本地所有tag push到远端服务器,如果远端服务器已存在的tag与此次推送的tag有矛盾,有矛盾的会失败,git有提示。origin指定了某一个远端服务器,有的时候可以省略。

推送某一个tag到远端服务器

$ git push origin tagName

删除远端服务器的某个tag

$ git push origin :refs/tags/tagName

貌似没有一键删除远端所有tag的命令,本地也没有。

列出所有tag

$ git tag

就这样,就可以列出项目的所有tag。不过如果tag很多,或者你想找某一类tag,需要用到 -l 参数,增加一个通配符。

$ git tag -l "V1.24.*"

这条命令就是列出所有V1.24.开头的tag。

列出tag并显示注释(annotation)

这需要用到 git tag 的 -n 参数,此参数后面可以跟一个数字,表示显示几行annotation,默认情况下,只显示第一行annotation。

$ git tag -l  -n   # git tag -ln is the same

查看tag的详细信息

$ git show tagName

checkout到某个tag

$ git checkout tagName

跟分支一样,可以直接切换到某个tag去。但这个时候不位于任何分支,处于游离状态。

基于tag创建分支(branch)

可以考虑基于这个tag创建一个分支,如果你已经checkout到此tag,用如下命名创建分支:

$ git checkout -b branchName

如果你当前还没有checkout到tag,也可以直接以那个tag为基础创建分支:

$ git checkout -b branchName tagName

就总结这么多吧,一时半会儿应该够用了。

其实tag就像commit一样,以上有些命令,如果把tag换成commit的SHA-1值,也可以的。

本文链接:https://www.maixj.net/ict/git-tag-23606

相关文章

留言区

《总结git tag相关操作》有1条留言

  • 麦新杰

    发现一个现象,tag的存在不区分branch,你在不同branch上打的不同tag,在任何branch上都能通过git tag查看到。 []


前一篇:
后一篇:
-->只要几分钟回答问卷,就能轻松赚现金!

栏目精选

云上小悟,麦新杰的独立博客

Ctrl+D 收藏本页

栏目


©Copyright 麦新杰 Since 2014 云上小悟独立博客版权所有 备案号:苏ICP备14045477号-1。云上小悟网站部分内容来源于网络,转载目的是为了整合信息,收藏学习,服务大家,有些转载内容也难以判断是否有侵权问题,如果侵犯了您的权益,请及时联系站长,我会立即删除。

网站二维码
go to top