Git在哪里存储标签?
Git在哪里存储标签?我执行:Git在哪里存储标签?,git,tags,Git,Tags,Git在哪里存储标签?我执行: $ git tag v0.1.0 v0.10.0 v0.11.0 但是目录.git/refs/tags是空的。Git在哪里存储这些标签 谢谢。它们也可以存储在.git/packed refs中,而wnoise是正确的,因为他认为git也在中存储标记。git/packed refs操作之后,在“pack”点之间(意思是git gc操作之间),git创建未打包的提交对象和未打包的标记: derek@derek-OptiPlex-960:~/Projects/test
$ git tag
v0.1.0
v0.10.0
v0.11.0
但是目录.git/refs/tags
是空的。Git在哪里存储这些标签
谢谢。它们也可以存储在
.git/packed refs中,而wnoise是正确的,因为他认为git也在中存储标记。git/packed refs
操作之后,在“pack”点之间(意思是git gc
操作之间),git创建未打包的提交对象和未打包的标记:
derek@derek-OptiPlex-960:~/Projects/test$ git tag
1
2
3
derek@derek-OptiPlex-960:~/Projects/test$ cat .git/packed-refs
# pack-refs with: peeled
55a87ab06897aca29285e58beb4e0de15af409fa refs/heads/master
89a6b171ee6d56bc3ce5a4cbd92c6a379594d974 refs/tags/1
55a87ab06897aca29285e58beb4e0de15af409fa refs/tags/2
derek@derek-OptiPlex-960:~/Projects/test$ ls .git/refs/tags
3
derek@derek-OptiPlex-960:~/Projects/test$
Git从哪里得到标签。。。听起来像是绕口令!是的,你说得对。在运行git-gc--aggressive--prune
之后,我看到我之前创建的一个标记从.git/refs/tags
中消失了,但出现在.git/packed refs
中。请注意,.git/packed refs
是一个文件,而不是目录,因此您必须cat.git/packed refs
才能查看标记。事实上,这是它们最终存储的唯一位置。它们是由git gc打包的,从来没有解包过,因为它们从不改变。事实上,如果你想做些什么来满足你的好奇心,最好的检查方法是通过git-tag
或git-for-each-ref[refs/tags]
,而不是直接查看.git目录。Jefromi,标签是通过git-gc
打包的,而是在“打包”点之间,git创建未打包的提交对象和未打包的标记。另请参见命令。请参见官方文档页面中的命令: