天天看点

Git Tag 的使用

Git 提供了一个叫 tag的东西,即标签。

作用

每一次commit都会生成一串字符ID,如下所示:

commit 7f2de2b2560e5d0623d64ef56f2128ed4ab532e0

这在正常的开发流程中没有什么问题,也不会去关心,但是等我们要发布的时候,或者已经发布了几个版本之后,要找回之前发布的版本到底是在哪个提交呢?

记住这串id吗? No way! 标签 (tag) 的作用就在这里了。

使用

在Git中tag有两种,一种叫轻量标签,一种叫附注标签。

  • 轻量标签:只是对某次提交的一个引用,也就是说,也就是一串比较好记的id。
  • 附注标签:是一个独立的对象,也就是说会存有一分独立的代码,类似一个分支。

对于我们在项目中来说,使用附注标签肯定更靠谱一点。

轻量标签

git tag v0
           

附注标签

-a 其实也就是annotated,附注的意思, 而 -m 则指定了说明信息。

显示标签

git tag

v0
v0
v0
           

还可通过 -l 的参数来过滤展示标签

git tag -l "v0.1.*"

v0
v0
           

查看具体的标签内容

git tag v0
tag v0
Tagger: linmiansheng
Date:   Tue Dec  ::  +

 Version on --

commit a609b85b2a51fcc54ced9a98b7e525a811c9590
Author: linmiansheng 
Date:   Tue Dec  ::  +

    bugfix

diff --git a/app/src/main/java/com/Test.java
b/app/src/main/java/com/Test.java
index d1..b83f76e 
...
           

删除标签

git tag -d v0
           

推送标签

附注标签就类似分支一样,所以也需要我们使用push命令来进行推送。

  • 单独推送某个标签
git push origin v.
           
  • 一次性推送所有标签

利用 –tag 参数,可将本地的所有tag都推送到远程服务器上。

其他如checkout操作等,就把tag当作一个分支使用即可。