转自:http://www.centoscn.cn/4370.html
简述
标签类似于快照功能,可以给版本库打一个标签,记录某个时刻库的状态。也可以随时恢复到该状态。
操作
切换到master分支下
[root@www azhen]# git checkout master 已经位于 'master' [root@www azhen]# git branch * master [root@www azhen]# ls 2.txt azhen README.md
给master打一个标签v1.0并查看都有哪一些标签
[root@www azhen]# git tag v1.0 [root@www azhen]# git tag v1.0
查看标签里面的信息
[root@www azhen]# git show v1.0 commit 2bf9f5b5945189844022910fb2a6a619a2798528 Author: azhen <centoscn@aliyun.com> Date: Sat Apr 7 03:48:03 2018 +0800 add 2.txt diff --git a/2.txt b/2.txt new file mode 100644 index 0000000..8d7c5b6 --- /dev/null +++ b/2.txt @@ -0,0 +1 @@ +www.centoscn.cn
tag是针对commit来打标签的,所以可以针对历史的commit来打tag
[root@www azhen]# git log --pretty=oneline --abbrev-commit 2bf9f5b add 2.txt 602096f add README
针对历史commit打标签
[root@www azhen]# git tag v1.1 602096f [root@www azhen]# git tag v1.0 v1.1
可以对标签进行描述
[root@www azhen]# git tag -a v1.2 -m "最新代码" 2bf9f5b [root@www azhen]# git tag v1.0 v1.1 v1.2
查看详细信息
[root@www azhen]# git show v1.2 tag v1.2 Tagger: azhen <centoscn@aliyun.com> Date: Wed Apr 11 18:13:45 2018 +0800 最新代码 commit 2bf9f5b5945189844022910fb2a6a619a2798528 Author: azhen <centoscn@aliyun.com> Date: Sat Apr 7 03:48:03 2018 +0800 add 2.txt diff --git a/2.txt b/2.txt new file mode 100644 index 0000000..8d7c5b6 --- /dev/null +++ b/2.txt @@ -0,0 +1 @@ +www.centoscn.cn
删除标签
[root@www azhen]# git tag -d v1.0 已删除 tag 'v1.0'(曾为 2bf9f5b)
推送指定标签到远程
[root@www azhen]# git push origin v1.2 Username for 'http://gitlab.centoscn.cn': root Password for 'http://root@gitlab.centoscn.cn': Counting objects: 1, done. Writing objects: 100% (1/1), 173 bytes | 0 bytes/s, done. Total 1 (delta 0), reused 0 (delta 0) To http://gitlab.centoscn.cn/root/azhen.git * [new tag] v1.2 -> v1.2
查看
同时如果有多个分支也可以同时推送
[root@www azhen]# git push --tag origin Username for 'http://gitlab.centoscn.cn': root Password for 'http://root@gitlab.centoscn.cn': Total 0 (delta 0), reused 0 (delta 0) To http://gitlab.centoscn.cn/root/azhen.git * [new tag] v1.1 -> v1.1
如果本地删除了一个标签,远程也想要删除需要这样操作
[root@www azhen]# git push origin :refs/tags/v1.1 Username for 'http://gitlab.centoscn.cn': root Password for 'http://root@gitlab.centoscn.cn': To http://gitlab.centoscn.cn/root/azhen.git - [deleted] v1.1
只想删除本地
[root@www azhen]# git tag v1.1 v1.2 [root@www azhen]# git tag v1.1 -d 已删除 tag 'v1.1'(曾为 602096f) [root@www azhen]# git tag v1.2