Git常用操作之tag操作
在之前两篇文章中,介绍到了我们commit id,我们是通过这个来区别不同版本的,然后达到我们的reset操作。但是我们不可能记住那么长一个无序的16位串,所以这就是标签存在的意义了。下面我们就来介绍一下怎么使用标签。
1.打标签
一般情况下,使用命令git tag <name>
用于新建一个标签,默认为HEAD
,也可以指定一个commit id;
$ git tag v1.0
$ git tag v0.4 7bc5953
2.查看所有的tag
$ git tag v0.5 v1.0
可以看到我是有打两个标签,v0.5,v1.0。那如果我们想要查看tag是打在那个版本上,当时是进行了什么操作,就需要show这个命令了。
3.查看tag具体的信息
$ git show v0.5 commit ca79737f1d486206a8519768ea2f790861d877bf Author: yuanchengbo <yuanchengbo@csair.com> Date: Fri Oct 27 09:57:32 2017 +0800 change 333 to 111 in 2.txt diff --git a/2.txt b/2.txt new file mode 100644 index 0000000..58c9bdf --- /dev/null +++ b/2.txt @@ -0,0 +1 @@ +111
可以看到标签v0.5对应的版本是ca79737f1,是在10月27提交的,当时的操作是把2.txt中的33改成了111。但是commit时留的信息是对应操作的信息,我们希望留下业务对应的信息。
4.完整版打标签
$ git tag -a v0.3 -m "version 0.3 released" $ git show v0.3 tag v0.3 Tagger: yuanchengbo <yuanchengbo@csair.com> Date: Mon Oct 30 17:36:53 2017 +0800 version 0.3 released commit 4484696d518ce0938e46ed7b346b3219f5428cfd Author: yuanchengbo <yuanchengbo@csair.com> Date: Thu Oct 26 20:44:02 2017 +0800 modified 111 to 222 diff --git a/2.txt b/2.txt index 58c9bdf..c200906 100644 --- a/2.txt +++ b/2.txt @@ -1 +1 @@ -111 +222
使用-a <版本号> -m “信息”就可以让我们的标签信息更加的丰满。可以看到我们除了commit时的信息,还有打标签时的信息。可以更加清楚的直到这个版本的内容。
通过标签,我们就可以更加方便的reset到我们需要的版本了。
4.推送标签
$ git push original tag v1.0 Password for 'http://yuanchengbo@10.79.1.167': Counting objects: 14, done. Delta compression using up to 4 threads. Compressing objects: 100% (9/9), done. Writing objects: 100% (12/12), 995 bytes | 0 bytes/s, done. Total 12 (delta 5), reused 0 (delta 0) To http://yuanchengbo@10.79.1.167/yuanchengbo/study.git * [new tag] v1.0 -> v1.0
通过git push original tag <标签名>可以将标签推送到远程仓库中去。
5.删除标签
$ git tag -d v1.0 Deleted tag 'v1.0' (was 6b3c6ed)
假如你不小心将标签打错了,你现在需要删除掉它,就可以通过git tag -d <标签名> 删除掉标签。
6.同步标签
$ git push original :v1.0 Password for 'http://yuanchengbo@10.79.1.167': To http://yuanchengbo@10.79.1.167/yuanchengbo/study.git - [deleted] v1.0
这样就可以将远程上的标签也删掉了。