Git全球标签---显然很糟糕,但为什么呢?

And*_*dyL 10 versioning tags git version-control linux-kernel

2005年发给Linux内核邮件列表的电子邮件中,Linus Torvalds非常强调git中的标签应该是私有的,并且在从其他人那里获取时不会自动包含:

拉经常头不能必须 更新标签.标签不与树有关,他们不能一定 不是如此,正是因为这将使他们全球,而不是私人的,它会从根本上使他们无法散发

和:

认为取出别人树意味着你应该获取他的标签是错误的,错误的,错误的.

我不是内核黑客.我使用git的原因之一是能够从不同的位置编辑我自己的代码.标签似乎是描述不同版本以供将来参考的自然方式,例如哪些有效,哪些无效,哪些怪癖存在.因此,对我而言,标记在提取中持续存在似乎是有帮助的.有人可以解释这种范式的危险吗?

为什么私有标签如此重要?还有什么选择?每次我想要标记特定版本的代码时,我应该简单地创建一个单独的分支吗?

Cor*_*sky 6

关键词是"不自动包含".您可以推拉标签,只需在推/拉命令中指定即可.试试git push --tags.

(实际上,这些天标签会被自动拉出,但推送必须是明确的.)


Jan*_*ger 5

我不知道,但标签实际获取这些天,这一直是一个相当长的时间的默认值.

当你用今天的git术语来看时,你引用的部分中的措辞似乎让我感到困惑,所以我敢说Linus的声明已经过时了.