Git 中的标记是如何工作的?

And*_*yne 0 git github

如果我在 git 的同一个存储库中有 4 个分支,并且我创建了一个标签,那么该标签是否存在于所有分支或仅存在于单个分支上?在 GitHub 中,它说每个分支上都有一个 1.0.0 标签,并且我无法在命令行上的任何其他分支上创建另一个 1.0.0 标签,因为它“已经存在”。标签是否会同时保留所有分支的状态?

gah*_*ooa 5

在中git,轻量级标记只是指向特定提交的唯一名称

git还有对象的概念tag,它允许您输入消息,并可能使用 GPG 对其进行签名。然而,归根结底,这些仍然只是指向一个特定的提交。

轻量级标签几乎与分支相同,只是它不是为更改而设计的,而分支则经常前进和更改。


轻量级标签只是.git/refs/tags/目录中的一个文件。它的内容是一个提交 ID。

[jason@step MyProject]$ cat .git/refs/tags/Version-4.9.2
77035b7a66427662f1096444eeb319ba9ab1080b
Run Code Online (Sandbox Code Playgroud)