Git 之标签管理

创建标签


1. git tag

  • 在所处分支的最新一次提交上新建一个标签
    $ git tag v1.0
    

2. git tag

  • 查看所有标签
    $ git tag 
    
      v1.0
    

3. git tag

  • 在具体的某一次提交上新建一个标签;
    常见场景:之前忘记打标签了,但是时间又过去了,通过git log找到历史提交的 commit Id;在打上就好了。(Git 之 版本回退的文章中我曾经介绍过git log这个命令)
    $ git log
    
      commit 38dc3407702796667151d4e373fc94dbe586d521 
      (HEAD -> tagTest, tag: v1, origin/develop, develop)
      Author: maning.xu 
      Date:   Thu May 30 20:41:50 2019 +0800
    
          Process Dialog
    
      commit 5b382ae5c4c784e1eb5770c217d210f209082f67
      Author: maning.xu 
      Date:   Thu May 30 16:59:13 2019 +0800
    
          Fix NumberBug
    
      commit 1fcf4d9c1e29d969b8fd89d73ad4e00c27a159c3
      Author: maning.xu 
      Date:   Thu May 30 16:59:11 2019 +0800
    
          Add Column
    
    $ git tag v0.9 5b382ae5c4c784e1eb5770c217d210f209082f67
    

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

4. git show

  • 查看标签信息
    $ git show 0.9
    
      commit 5b382ae5c4c784e1eb5770c217d210f209082f67 (tag: v0.9)
      Author: maning.xu 
      Date:   Thu May 30 16:57:51 2019 +0800
    
      Fix NumberBug
    
      diff --git ...
    

5. git tag -a -m

  • 创建带有说明的标签
    $ git tag -a v0.1 -m "version 0.1 released" 1fcf4d9c1e29d969b8fd89d73ad4e00c27a159c3
    

·
·
·
·
·

操作标签


1.我们已经在本地创建了标签,提交代码时并不会推送到远程,可以使用
git push origin 将本地标签推送到远程

  1. 如果觉得一个一个推送麻烦,也可以使用
    git push origin --tags将未推送到远程的本地标签一次性推送到远程

  2. 因为创建的标签只是存储在本地,所以使用
    git tag -d 可以将标签从本地删除。

  1. 如果标签已经推送到远程,那么首先我们需要将标签从本地删除;
    其次使用git push origin :refs/tags/ 将远程标签删除。

你可能感兴趣的:(Git 之标签管理)