前言

通常在发布软件的时候打一个tag,tag会记录版本的commit号,方便后期回溯。

git tag 常用操作命令

  • 新建tag

  • 命令格式:git tag tagName

  • 例:git tag v1.0-test

  • 列出所有tag

  • 上面例子创建一个名为v1.0的tag,创建好可以使用git tag命令看到新增加的tag。

https://www.loganjin.cn/cdn/article/git-tag/git-tag.png

  • git tag 加上-l可用通配符来过滤tag

  • 例:git tag -l "*2021*"

https://www.loganjin.cn/cdn/article/git-tag/git-tag-l.png

  • git tag 加上-a参数创建一个带备注的tag,备注信息由-m指定。如未传入-m则在创建过程中系统会自动为你打开编辑器让你填写备注信息。

  • 命令格式:git tag -a tagName -m "my tag"

  • 例:git tag -a v1.0-test -m "This is a test tag!"

https://www.loganjin.cn/cdn/article/git-tag/git-tag-a.png

  • git show命令可以查看tag的详细信息,包括commit号等。

  • 命令格式:git show tagName

  • 例:查看v1.0-testtag的详细信息,git show v1.0-test,可以看出Date信息下面就是刚才的备注信息。

https://www.loganjin.cn/cdn/article/git-tag/git-show.png

  • 给指定的某个commit号加tag

  • tag最重要的是有git commit号,后期我们可以根据这个commit号来回溯代码。

  • 通过git log可以获取commit,取校验和的前几位数字即可。

https://www.loganjin.cn/cdn/article/git-tag/git-log.png

  • 命令格式:git tag -a v1.2 commit -m "my tag"
  • 例:git tag -a v1.2 3a9a746b -m "my test-tag"

https://www.loganjin.cn/cdn/article/git-tag/git-tag-a-commit.png

  • 将tag同步到远程服务器

  • 推送tag到远端服务器与提交代码类似,同样使用git push来推送到远端服务器。

  • 命令格式:git push origin [tagName]
  • 例:git push origin v1.0-20210727

https://www.loganjin.cn/cdn/article/git-tag/git-push-tag.png

  • 推送本地所有tag:git push origin --tags

  • 切换到某个tag

  • 和切换分支一样,可以直接切换到某个tag去。这个时候不位于任何分支,处于游离状态,可以考虑基于这个tag创建一个分支。

  • 命令格式:git checkout tagName
  • 例:git checkout v1.0-20210727

https://www.loganjin.cn/cdn/article/git-tag/git-checkout-tag.png

  • 删除某个tag

  • 本地删除

    • 命令格式:git tag -d tagName
    • 例:git tag -d v1.0-20210727

https://www.loganjin.cn/cdn/article/git-tag/git-tag-d-local.png

  • 远端删除
    • 命令格式:git push origin :refs/tags/<tagName>
    • 例:git push origin :refs/tags/v1.0-20210727

https://www.loganjin.cn/cdn/article/git-tag/git-tag-d-remote.png

结语

版权声明:如无特殊说明,文章均为本站原创,转载请注明出处

本文链接:https://www.loganjin.cn/article/git-tag/

许可协议:署名-非商业性使用 4.0 国际许可协议