5.2创建标签

来源:互联网 发布:c语言if else语句代码 编辑:程序博客网 时间:2024/06/08 19:19

目标:

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

git tag -a -m “blablabla…”可以指定标签信息;

可以用git show 查看标签信息

git tag -s -m “blablabla…”可以用PGP签名标签;

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

创建标签:

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

$ git branch* dev  master$ git checkout masterSwitched to branch 'master'

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

$ git tag v1.0

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

$ git tagv1.0

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

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

$ git log --pretty=oneline --abbrev-commit7966549 (HEAD -> master, tag: v1.0, origin/master) merged bug fix 1015aa1d8d fix bug 101b7df063 merged bug fix 101404aa69 fix bug 10182b72cf merge with no-ff7818c51 add merged38947f conflict fixed3dba5f8 & simplec0dc45a AND simple227fd3f branch test15a9157 add text.txt0d083a9 remove test.txt5b10e1d add test1f12365 git tracks changes of gilesa0731f8 git tracks changes924d61c understand how stage works9e3abb3 append GPLebd8628 add distributedcdedb6c worte a readme file

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

$ git tag v0.9 7818c51

再用命令git tag查看标签:

$ git tagv0.9v1.0

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

$ git show v0.9commit 7818c513a1bed98302c7899bdd8a2930a8b5273c (tag: v0.9)Author: *** <***@163.com>Date:   Tue Nov 21 17:55:23 2017 +0800    add merge...

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

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

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

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

$ git show v0.1tag v0.1Tagger: *** <***@163.com>Date:   Tue Nov 28 10:24:35 2017 +0800version 0.1 releasedcommit 796654943d87e7e3d33dfac90da165ec1da702ce (HEAD -> master, tag: v1.0, tag: v0.1, origin/master)Merge: b7df063 5aa1d8dAuthor: lyj <lyj79613@163.com>Date:   Mon Nov 27 21:34:03 2017 +0800    merged bug fix 101

还可以通过-s用私钥签名一个$ git tag -s v0.2 -m “signed version 0.2 released” fec145a用PGP签名,因此,必须首先安装gpg(GnuPG),如果没有找到gpg,或者没有gpg密钥对,就会报错:

gpg: signing failed: secret key not availableerror: gpg failed to sign the dataerror: unable to sign the tag

如果报错,请参考GnuPG帮助文档配置Key。

用命令git show 可以看到PGP签名信息:

$ git show v0.2tag v0.2Tagger: Michael Liao <askxuefeng@gmail.com>Date:   Mon Aug 26 07:28:33 2013 +0800signed version 0.2 released-----BEGIN PGP SIGNATURE-----Version: GnuPG v1.4.12 (Darwin)iQEcBAABAgAGBQJSGpMhAAoJEPUxHyDAhBpT4QQIAKeHfR3bo...-----END PGP SIGNATURE-----commit fec145accd63cdc9ed95a2f557ea0658a2a6537fAuthor: Michael Liao <askxuefeng@gmail.com>Date:   Thu Aug 22 10:37:30 2013 +0800    branch test

用PGP签名的标签是不可伪造的,因为可以验证PGP签名。验证签名的方法比较复杂,这里就不介绍了。

原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 小米手机预约错了怎么办 小米note二手没解锁怎么办 艾灸后脸色越黑怎么办 淘宝软件类目不能上架宝贝怎么办 ae中没有mpg格式怎么办 淘宝小二处理不公怎么办 遇到卖保险的人怎么办 租房合同没理家电清单怎么办 普雪油烟机坏了怎么办 我累了 真的累了怎么办 u盘15g变成4g了怎么办 属兔的买了东户怎么办 玩时时彩输了2万怎么办 胸变的又软又小怎么办 u盘16g变成4g了怎么办 1岁宝宝吃了就吐怎么办 脚崴了肿了很痛怎么办 九格拼图5在9那怎么办 4s锁屏密码忘了怎么办 6p触屏偶尔乱跳怎么办 新办劳务公司的劳务资质怎么办 汽车没电了打不着火怎么办 吃凉的甜的牙疼怎么办 学车对点对不上怎么办 发现老公有外遇最明智的怎么办 想开个童装店但是没经验怎么办 母乳不够吃宝宝又不喝奶粉怎么办 掉头发很厉害怎么办有什么偏方 红米2a刷死机了怎么办 公司退市我们买的股票怎么办 黑魂3把npc杀了怎么办 摔倒了膝盖摔肿了又痛怎么办 厕所堵了怎么办疏通马桶有妙招 月经不来怎么办如何让它快点来 苹果手机进水了开不了机怎么办 苹果5s进水了怎么办修要多少钱 吃了过期3年的药怎么办 离婚后孩子的抚养费不给怎么办 小车钥匙丢了怎么办配要多少钱 一键启动的车钥匙丢了怎么办 股票退市了手里的股票怎么办