我曾经读到git提交消息应该使用祈使式现在时,例如。“为x添加测试”。我总是发现自己在用过去时。“为x添加测试”,这对我来说感觉更自然。
下面是John Resig最近在一条消息中展示了这两点:
在操作测试中调整更多的jQuery集合结果。还固定了预期测试结果的顺序。
这重要吗?我应该用哪一种?
我曾经读到git提交消息应该使用祈使式现在时,例如。“为x添加测试”。我总是发现自己在用过去时。“为x添加测试”,这对我来说感觉更自然。
下面是John Resig最近在一条消息中展示了这两点:
在操作测试中调整更多的jQuery集合结果。还固定了预期测试结果的顺序。
这重要吗?我应该用哪一种?
当前回答
这取决于你。只要使用提交消息就可以了。 但如果你不需要在时间和语言之间切换,就会更容易。
如果你是在一个团队中开发,那么这个问题应该讨论并解决。
其他回答
这重要吗?人们通常足够聪明,可以正确地解释消息,如果他们不是,你可能不应该让他们访问你的存储库!
这取决于你。只要使用提交消息就可以了。 但如果你不需要在时间和语言之间切换,就会更容易。
如果你是在一个团队中开发,那么这个问题应该讨论并解决。
坚持使用现在时祈使句,因为
有一个标准是很好的 它与bug跟踪器中的票据相匹配,这些票据自然具有“实现某些东西”、“修复某些东西”或“测试某些东西”的形式。
你在给谁写信?读者通常是在自己拥有所有权之前还是之后阅读消息?
我认为从两个角度都给出了很好的答案,我可能只是没有建议每个项目都有一个最佳答案。这次分裂的投票可能也说明了这一点。
即总结如下:
消息主要是给其他人的,通常是在他们假设更改之前的某个时候阅读的:对现有代码进行更改会产生什么影响的建议。 信息主要是作为日志/记录给你自己(或你的团队),但通常是从假设变化的角度来阅读,并回溯发现发生了什么。
不管怎样,这可能会为你的团队/项目带来动力。
对当前时态、命令式提交消息的偏好来自Git本身。从Git repo中的Documentation/ subtingpatches:
描述你祈使语气的变化。"让xyzzy做frotz" 而不是“[这个补丁]使xyzzy做frotz”或“[我]改变了xyzzy。 To do frotz”,就好像你在命令代码库进行更改 其行为。
因此,您将看到许多以这种风格编写的Git提交消息。如果您在一个团队或开源软件中工作,那么如果每个人都坚持这种风格,以保持一致性,这是很有帮助的。即使您正在处理一个私人项目,并且您是唯一一个会看到您的git历史的人,使用祈使式语气也很有帮助,因为它建立了良好的习惯,当您与他人一起工作时,这些习惯将受到赞赏。