【问题标题】:What is the use of commit messages?提交消息有什么用?
【发布时间】:2011-02-17 21:34:56
【问题描述】:

我很难问这个问题,但就是这样。 几年来,我一直在使用源代码控制来处理使用不同系统(svn、hg、git)的多个项目,并且我学会了如何通过遵循指南等来改进我的消息。 但据我所知,之后我再也没有看过它们。

那么......你如何从你自己的提交信息中获利?当我因为弄坏了一些东西而需要返回并需要重新开始时,我通常只是返回到最新的“节点”(我开始或合并分支的地方)。我写这些消息是为了让那些对正在发生的事情感到好奇的监控项目的人写的吗?

问候

【问题讨论】:

    标签: version-control commit-message


    【解决方案1】:

    如果没有注释告诉您它是什么,那么提交的意义何在?这就像问“为什么书的侧面有标题?”,或者“为什么书有索引和页码?”。在我看来,没有每个更改的描述的源代码控制日志不会很有用。

    您可能需要参考提交消息的原因包括

    • 出现了一个错误,您想知道上次更改该部分代码的时间
    • 您决定撤消一些更改并需要决定恢复到哪个修订版

    对于这两种可能性中的任何一种,如果没有好的提交消息,您将不得不查看每个提交的差异,直到您在代码中找到您要查找的内容。

    【讨论】:

      【解决方案2】:

      在最好的情况下,提交绑定到功能/错误跟踪器中的工作项。这样,您将能够轻松查看已实施/修复的功能/错误。这不仅有助于了解某个版本是否包含功能或错误修复,还有助于轻松创建发行说明。

      【讨论】:

        【解决方案3】:

        你写它们是为了帮助你未来的自己和团队中的其他人。给你一些我发现它们有用的背景:

        我曾经参与过一个提交消息非常宝贵的项目——我不止一次使用它们来追踪多年前的代码。在那个项目中,我们的错误跟踪系统也与我们的 VCS(ClearCase)集成。因此,当您签入更改时,它会在提交 cmets 中记录错误编号。这对于让您准确追溯更改的内容和原因非常有帮助。

        总而言之,尽管如果您刚开始提交消息似乎毫无意义(尤其是如果您是该项目的唯一工作人员),但一旦您拥有成功的产品并在生产中得到支持,它们就会变得非常宝贵多个开发人员。

        更新

        提交消息的另一个有用功能是它们要求您查看和总结您刚刚所做的更改。即使我记得我所做的更改,我也会经常在签入之前对文件进行快速比较。我会简要地重新阅读一遍,以确保没有错字,我改变了我想要的一切,等等。这是一种简单的方法来检查您的代码中的那些小错误,否则这些小错误会进入您的代码。无论如何,在这样做之后,我清楚地了解了哪些变化,所以我在签入文件时用它来写一个简明的变化摘要。这是一个简单的习惯,可以帮助您轻松提高代码质量。

        【讨论】:

          【解决方案4】:

          您的消息更多是针对其他用户而不是您自己。尽管我确保即使在个人回购中也放置良好的提交消息。当您在项目上偏离轨道并在几个月后访问它以了解项目最近完成的工作时会有所帮助。

          【讨论】:

          • 没有什么比更新和获取数十个更新文件更让我讨厌的了,但没有消息告诉我为什么必须更改这些文件。
          • 同意。我看到代码提交到一个公共库,却不知道它们为什么被制作 - 我喜欢它;)
          【解决方案5】:

          我发现的一件事是提交消息是防止自己提交不够频繁的好方法。如果我不能将更改放入简短的提交消息中,我可能应该更早提交更改。

          【讨论】:

            【解决方案6】:

            “给我发一份你在过去两周内所做的事情的清单” - 老板

            【讨论】:

            • 我必须和我的老板谈谈信任和程序员的工作方式。或者离开;)
            • 这可能与信任无关。特别是在他想到的一种情况下,他只是想知道在发行说明文档中添加什么内容。
            猜你喜欢
            • 2011-09-07
            • 1970-01-01
            • 1970-01-01
            • 2021-04-27
            • 2018-12-25
            • 2014-11-01
            • 2022-07-05
            • 2015-06-11
            相关资源
            最近更新 更多