git标记是否始终基于固定提交

git标记是否始终基于固定提交,git,git-tag,Git,Git Tag,在git tag手册页上,我了解到可以从commit或On对象(例如分支)创建标记,如下所示: git tag mytag master 但是标记在内部是基于固定提交的吗?i、 e.如果master消失或新提交添加到master,则提交标签引用是否会更改?在我自己的实验中,标签似乎总是引用相同的固定提交,但我想确认一下 如果master消失或向master添加了一个新的提交,那么提交标记引用是否会更改 不,它不会更改:在创建所述标记时,该标记应用于master引用的commit 您可以通过以下

在git tag手册页上,我了解到可以从commit或On对象(例如分支)创建标记,如下所示:

git tag mytag master
但是标记在内部是基于固定提交的吗?i、 e.如果
master
消失或新提交添加到
master
,则提交标签引用是否会更改?在我自己的实验中,标签似乎总是引用相同的固定提交,但我想确认一下

如果master消失或向master添加了一个新的提交,那么提交标记引用是否会更改

不,它不会更改:在创建所述标记时,该标记应用于master引用的commit

您可以通过以下方式查看标记引用的提交:

git rev-parse <tag>~0
git rev parse~0
请参阅“”中的更多内容


这适用于轻量级标记和带注释的标记。

您确实可以删除一个分支,并且该标记仍将引用提交以及该提交的任何父级,这些父级也不包含在另一个分支中


您仍然能够签出标记,它仍然显示在git日志和gitg等工具中。

无论标记是如何创建的,都是这样吗?@simonzack yes,对于轻量级或带注释的标记。将标记os作为固定参考的想法。不是移动的。