创建标签

在Git中打标签非常简单,首先,切换到需要打标签的分支上:

  1. $ git branch
  2. * dev
  3. master
  4. $ git checkout master
  5. Switched to branch 'master'

然后,敲命令git tag <name>就可以打一个新标签:

  1. $ git tag v1.0

可以用命令git tag查看所有标签:

  1. $ git tag
  2. v1.0

默认标签是打在最新提交的commit上的。有时候,如果忘了打标签,比如,现在已经是周五了,但应该在周一打的标签没有打,怎么办?

方法是找到历史提交的commit id,然后打上就可以了:

  1. $ git log --pretty=oneline --abbrev-commit
  2. 12a631b (HEAD -> master, tag: v1.0, origin/master) merged bug fix 101
  3. 4c805e2 fix bug 101
  4. e1e9c68 merge with no-ff
  5. f52c633 add merge
  6. cf810e4 conflict fixed
  7. 5dc6824 & simple
  8. 14096d0 AND simple
  9. b17d20e branch test
  10. d46f35e remove test.txt
  11. b84166e add test.txt
  12. 519219b git tracks changes
  13. e43a48b understand how stage works
  14. 1094adb append GPL
  15. e475afc add distributed
  16. eaadf4e wrote a readme file

比方说要对add merge这次提交打标签,它对应的commit id是f52c633,敲入命令:

  1. $ git tag v0.9 f52c633

再用命令git tag查看标签:

  1. $ git tag
  2. v0.9
  3. v1.0

注意,标签不是按时间顺序列出,而是按字母排序的。可以用git show <tagname>查看标签信息:

  1. $ git show v0.9
  2. commit f52c63349bc3c1593499807e5c8e972b82c8f286 (tag: v0.9)
  3. Author: Michael Liao <askxuefeng@gmail.com>
  4. Date: Fri May 18 21:56:54 2018 +0800
  5. add merge
  6. diff --git a/readme.txt b/readme.txt
  7. ...

可以看到,v0.9确实打在add merge这次提交上。

还可以创建带有说明的标签,用-a指定标签名,-m指定说明文字:

  1. $ git tag -a v0.1 -m "version 0.1 released" 1094adb

用命令git show <tagname>可以看到说明文字:

  1. $ git show v0.1
  2. tag v0.1
  3. Tagger: Michael Liao <askxuefeng@gmail.com>
  4. Date: Fri May 18 22:48:43 2018 +0800
  5. version 0.1 released
  6. commit 1094adb7b9b3807259d8cb349e7df1d4d6477073 (tag: v0.1)
  7. Author: Michael Liao <askxuefeng@gmail.com>
  8. Date: Fri May 18 21:06:15 2018 +0800
  9. append GPL
  10. diff --git a/readme.txt b/readme.txt
  11. ...

注意:标签总是和某个commit挂钩。如果这个commit既出现在master分支,又出现在dev分支,那么在这两个分支上都可以看到这个标签。

小结

  • 命令git tag <tagname>用于新建一个标签,默认为HEAD,也可以指定一个commit id;

  • 命令git tag -a <tagname> -m "blablabla..."可以指定标签信息;

  • 命令git tag可以查看所有标签。

读后有收获可以支付宝请作者喝咖啡:

创建标签 - 图1