6

我遇到了很多通过标记 gits 发誓的开发人员。就个人而言,我从未见过它的用途。

我知道您可以将版本信息放在标签中,但为什么不将该信息放在提交消息中呢?

我只是对标签添加的提交消息不能添加的值感到困惑。

4

4 回答 4

8

标签允许您引用存储库中的特定提交。例如,使用版本标签,您可以轻松获得项目中对应于版本 1.5的提交。这比记住特定提交的哈希值或滚动/搜索日志信息以找出代表版本 1.5 的提交更可取。

出于多种原因,这可能很有用,但只考虑一个:您有两个客户端运行不同版本的软件,客户端 A使用version 1.5客户端 B使用 version 2.0。客户端 A 报告了一个错误,您不能只升级他们的安装,而是需要解决版本1.5代码中的错误。标记版本1.5使您可以轻松地返回他们正在运行的代码并进行错误修复。

于 2012-07-02T00:00:21.177 回答
8

在 Git 中,标签允许您为特定提交分配一个符号名称(易于记忆的名称)。这允许您通过名称而不是原始提交 id来引用该提交。

当我反复引用特定版本时,我有时会添加一个本地标签,例如在完成大量工作之前的某个时间点。我还使用带注释的标签来标记特定的发布版本号(带注释的标签可以很容易地推送,并且可以包含除了名称之外的其他描述)。

于 2012-07-02T00:00:40.800 回答
5

提交消息通常用于提供有关提交原因的更多信息,而不仅仅是“它是版本 X”。

使用标记,您可以返回到标记的版本,而无需滚动日志以找到正确的提交号;您直接查看标记的版本。更有限的标签名称空间在这里是一个好处,而不是一个障碍。

于 2012-07-02T00:00:13.130 回答
2

请注意,您可以签署一个标签,这在您想要推送时很重要(即发布到另一个仓库)

请参阅“为什么有些开源项目不接受拉取请求,而只通过电子邮件发送补丁文件”。

那么为什么要在 Git(分布式版本控制系统)中添加标签?

您可以标记以引用具有符号名称的树(如其他答案中所述)。

但是您也可以通过保证内容的完整性来签署您的标签,以便为另一个 repo 做出贡献。
收件人只需检查该标签签名,以确认它来自受信任的来源。

于 2012-07-02T07:14:00.093 回答