ILD

git tag
作者:Yuan Jianpeng 邮箱:yuanjp@hust.edu.cn
发布时间:2018-5-25 站点:Inside Linux Development

git tag, 创建,列出,删除,验证GPG签名的tag对象。


语法:

1
2
3
4
5
6
7
8
git tag [-a | -s | -u <keyid>] [-f] [-m <msg> | -F <file>] [-e]
    <tagname> [<commit> | <object>]
git tag -d <tagname>…
git tag [-n[<num>]] -l [--contains <commit>] [--no-contains <commit>]
    [--points-at <object>] [--column[=<options>] | --no-column]
    [--create-reflog] [--sort=<key>] [--format=<format>]
    [--[no-]merged [<commit>]] [<pattern>…]
git tag -v [--format=<format>] <tagname>…


描述

添加一个tag引用到refs/tags/,除非-d/-l/-v选项来删除,列出和验证tags。没有给出-f选项,则名字不能已经存在。


如果-a -s  -u <key_id>中的一个给出了,则命令创建一个tag对象,要求tag message,除非给出了-m <msg>或-F <file>给出,否则将开始一个编辑器来编辑tag message。


如果有-m <msg> 或者 -F <file>,而没有-a, -s, -u <keyid>中的一个,则-a被选择。否则创建一个指向commit的引用(即轻量级tag)


当使用-s或-u <keyid>时,将创建GnuPG签名的tag。如果-u <keyid>没有使用,当前用户的committer identity用来做key。


使用-a -s -u选项创建的tag对象叫做annotated tag,它们包含创建日期,tagger name,email,tagging messae,以及可选的GnuPG签名。


Annotated tag命中注定是用来发布的,而lightweight tags用来作为私有或者临时object标签。因此,一些支持naming objects的git命令默认忽略lightweight tags。


选项:

-a

--annotate

创建一个未签名的annotated tag对象。


-s

--sign

创建一个GPG-signed tag,使用默认e-mail地址作为key。


-u <keyid>

--local-user=<keyid>

使用给定的key创建一个GPG-signed tag。


-f

--force

如果tag已经存在,替换它。如果没有改选项,如果tag已经存在,创建将会失败。


-d

--delete

删除给定名字的已经存在的tags。


-v

--verify

验证给定名字tag的GPG签名


-l

--list

列出tag,可选的<pattern>用来列出匹配格式的tag,如'v-*'


-m <msg>

--message=<msg>

指定新建tag的message。


-F <file>

--file=<file>

通过文件指定message


<commit>

<object>

新建的tag指向该对象。默认是HEAD。


Copyright © linuxdev.cc 2017-2024. Some Rights Reserved.