对于每个对象类型,都有一个相关的管道命令:对于commit object
,commit-tree
s blob object
和hash-object
s tree object
write-tree
{1}}。
是否有一个管道命令允许只在tag object
内插入Object Database
,而无需在refs/tags
dicrectory,id est中创建文件而不使用git tag
?< / p>
答案 0 :(得分:1)
它是git mktag
,非常原始。
答案 1 :(得分:0)
是否有一个管道命令允许只在对象数据库中插入标记对象而不在refs / tags目录中创建文件?
没有
要添加到torek&#39; answer,git mktag
已于2005年4月的Git v0.99 commit ec4465a中引入:
从标准输入中读取标记内容并创建标记对象 输入必须是格式良好的标记对象。
三行&#34;对象
<sha1>
&#34; +&#34;输入<typename>
&#34; +&#34;标记<tagname>
&#34;,然后是一些git本身并不关心的自由格式签名,但可以通过gpg或类似方式进行验证。
虽然它没有在Object数据库中插入任何内容。它(mktag.c
)由git tag script
at the time使用:
object=$(git-mktag < .tmp-tag)
mkdir -p "$GIT_DIR/refs/tags"
echo $object > "$GIT_DIR/refs/tags/$name"
mktag
的第四行于2006年4月的Git 1.4.2-rc3中引入,commit 446c6fa。
创建有效标记的位置如下:
git-mktag <tag.sig >.git/refs/tags/mytag