列出所有标签

  • 直接使用git tag即可

 git tag
    v1.0.0
    v1.0.1
    v1.0.2
  • 如果标签过多,可以搜索

 git tag -l 'v1.0*'
  • 显示详细信息

git show v1.0.0

commit 41b1058d87990466231deda16cc5c047a4683805
Author: jacoobwang <531532957@qq.com>
Date:   Fri Mar 31 16:02:48 2017 +0800

    modify composer

diff --git a/composer.json b/composer.json
index d8bffad..b683809 100644
--- a/composer.json
+++ b/composer.json
@@ -1,4 +1,9 @@

创建标签

git 打标签有2种情况:

  • 轻量级的

它其实是一个独立的分支,或者说是一个不可变的分支,指向特定提交对象的引用。
命令如下:

git tag aaaa
  • 带附注的

实际上是存储在仓库中的一个独立对象,它有自身的校验和信息,包含着标签的名字,标签说明,标签本身也允许使用 GNU Privacy Guard (GPG) 来签署或验证,电子邮件地址和日期。
命令如下:

git tag -a V1.2.1 -m 'version 1.2.1'

一般我们都建议使用含附注型的标签,以便保留相关信息。所以推荐使用第二种标签形式。

删除标签

  • 删除本地标签

git tag -d V1.0.1

到这一步我们只是删除了本地 V1.0.1的版本,可是线上V1.0.1的版本还是存在,如何办?

  • 删除远程标签

git push origin :refs/tags/V1.0.1

这样本地和远程的 V1.2 版本已经被我们移除掉。

推送到远程服务器

git push origin --tags

非常简单,执行该命令就推送到远程服务器上了,如github等。

下载远程版本到本地

如果本地已经有远程分支:

git fetch origin tag V1.0.1

如果本地没有远程仓库,想直接拉某个版本:

git clone --branch v1.0.1 https://github.com/jacoobwang/vino-blog.git

其它功能

  • v1.0.1与 commits 1b2e1d63f作对比

 git diff v1.0.1 1b2e1d63ff
  • v1.0.1与当前版本作对比

 git diff v1.0.1 HEAD
  • 搜索v1.0.1是否有hello

  git grep "hello" v1.0.1
  • 查看v1.0.1版本中的readme

 git show v1.0.1:readme

Jacoob_Wang
898 声望6 粉丝

no talk show me code