progit之 git 基础(3)

一、打标签

Git可以给历史中的某一个提交打上标签,以示重要。比较有代表性的是人们会使用这个功能来标记发布节点(v1.0 等)。主要涉及如何列出已有标签、如何创建新标签以及不同类型的标签分别是什么

1. 列出标签

# 这个命令以字母顺序列出标签;但是他们出现的顺序并不重要
  $ git tag
  v0.1
  v1.3
# 如果只对 1.8.5系列感兴趣
  $ git tag -l 'v1.8.5*'
  v1.8.5
  v1.8.5-rc0
  v1.8.5-rc1
  v1.8.5-rc2
  v1.8.5-rc3
  v1.8.5.1
  v1.8.5.2
  v1.8.5.3
  v1.8.5.4
  v1.8.5.5

2. 创建标签

Git 使用两种主要类型的标签:轻量标签(lightweight)和 附注标签(annotated)

轻量标签很像一个不会改变的分支——它只是一个特定提交的引用。

附注标签是存储在Git数据库中的一个完整对象,他们是可以被校验的。其中包含打标签者的名字、电子邮件地址、日期时间,还有一个标签信息,并且可以使用 GNU Privacy Guard (GPG)签名与验证。

3. 附注标签

创建附注标签最简单的方式是当你在运行 tag 命令时指定 -a 选项; -m选项指定了一条将会存储在标签中的信息。

  $ git tag -a v1.4 -m 'my version 1.4'
  $ git tag
  v0.1
  v1.3
  v1.4

通过使用 git show 命令可以看到标签信息与对应的提交信息

  $ git show v1.4
  tag v1.4
  Tagger: Ben Straub <ben@straub.cc>
  Date:   Sat May 3 20:19:12 2014 -0700

  my version 1.4

  commit ca82a6dff817ec66f44342007202690a93763949
  Author: Scott Chacon <schacon@gee-mail.com>
  Date:   Mon Mar 17 21:52:11 2008 -0700

      changed the version number

4. 轻量标签

轻量标签本质上是将提交检验和存储到一个文件中,没有保存任何其他信息。创建轻量标签,不需要使用-a、-s或-m选项,只需提供标签名字。

这时,如果在标签上运行 git show,你不会看到额外的标签信息,只会显示出提交信息。

  $ git tag v1.4-lw
  $ git tag
  v0.1
  v1.3
  v1.4
  v1.4-lw
  v1.5

 5. 后期打标签

如果你想对之前的一个提交打上标签,可以在之后补上标签。需要在命令的末尾指定提交的校验和(或部分校验和)

$ git tag -a v1.2 9fceb02

6. 共享标签

默认情况下,git push 并不会传送标签到远程仓库服务器上。在创建完标签后你必须显示的推送标签到共享服务器上

 

 

 

 

 

 

 

 

posted on 2020-01-21 18:05  mlllily  阅读(141)  评论(0编辑  收藏  举报