一、简述
可以针对commit定义一个标签,标签相当于commit的别名。比如我们1.0版本完成时可以定义一个标签v1.0,2.0版本完成时定义一个标签v2.0。这样可以让我们方便的管理版本。
二、轻量级标签
- 查看仓库所有标签
git tag
也可以使用git log来查看标签:
git log --decorate
- 创建标签
git tag <标签名>
此命令默认在最新的commit上创建一个标签。
- 查看标签对应的版本信息
git show <标签名>
- 删除标签
git tag -d <标签名>
- 指定commit上创建标签
git tag <标签名> <commit版本号>
此命令表示在指定的commit版本上创建标签。例:git tag v1.0 abc1234表示在版本号为abc1234的commit上串讲标签v1.0。
三、含附注的标签
含附注的标签,实际上是储存在仓库的一个对象。它拥有自己的校验方式和信息,包含着标签的名字,电子邮件地址和日期,以及标签说明,标签本身也允许使用 GNU Privacy Guard (GPG) 来签署或验证。
git tag -a <标签名> -m <描述> <commit版本号>
此命令表示在指定的commit上创建一个含附注的标签,其中如果不加commit版本号则在最新的commit上创建。
四、签署标签
加密技术可以保证你的文件使用加密形式存储,不管你是要把它公开到因特网,备份到服务器,用U盘携带,还是保存在笔记本里。加密你的数据,意味着除非是你认可的接收者,其他人都不可以读取,这样可以防止信息泄漏。GPG是GNU Privacy Guard的缩写。它是一种基于密钥的加密方式,使用了一对密钥对消息进行加密和解密,来保证消息的安全传输。一开始,用户通过数字证书认证软件生成一对公钥和私钥。任何其他想给该用户发送加密消息的用户,需要先从证书机构的公共目录获取接收者的公钥,然后用公钥加密信息,再发送给接收者。当接收者收到加密消息后,他可以用自己的私钥来解密,而私钥是不应该被其他人拿到的。
Linux中国-GNU Privacy Guard加密指南
- 生成GPG Key
gpg --gen-key
执行此命令后按照提示进行填写信息即可。
- 查看GPG Key
gpg --list-keys
3.创建签署标签
git tag -s <标签名> -u <GPG签署真实姓名> -m <描述> <commit版本号>
即将原创建标签的命令的-a参数换为-s,再添加-u参数,其中-u参数的值是生成GPG Key的时候填写的realName。如果-u填错了则会创建失败。如果不填commit版本号则在最新的commit上创建标签。
五、标签推送到远程仓库
执行git push origin/master命令并不会将标签推送到远程仓库,此命令只是将分支内容推送到远程仓库。标签推送到仓库需要使用以下命令:
- 推送单个标签到远程仓库
git push origin <标签名>
- 推送全部标签到远程仓库
git push origin --tags
我们在推送分支的时候没有将标签推送到远程仓库,但是执行git pull时会将远程仓库的标签更新到本地仓库。
创建日期:2020-09-29
网友评论