您应该评论代码和更改日志中的更改吗?

时间:2009-04-06 02:19:05

标签: svn git version-control comments cvs

我注意到开发人员倾向于评论他们的更改,而不是目的/日期/原因在更改日志中的理由。他们有一些非常合理的说法,如果我们两者都需要,就会发生重复工作。我花了一些时间来追踪变化。没有给出明确的方向,缺乏一致的方法让我有点恼怒。通常人们都在做两件事吗?是否有我想尝试的工具来减少寻线时间。 Currenltly我们有cvs,git和svn实现。

6 个答案:

答案 0 :(得分:20)

代码中的注释应描述代码当前的作用。只有当代码的预期行为发生变化时,这些注释才会发生变化 - 如果修订只是一个错误修复,则不应更改。

更改日志中的注释应描述在此版本中进行了哪些更改

推论:避免在代码注释中添加修订号/日期以及进行更改的程序员的名称。 (感谢Jonathans。)

答案 1 :(得分:7)

请勿使用解释更改的注释来混淆代码。这只是需要维护的一件事,可能不会一致,导致更多错误和更多变化。使用源代码管理注释功能来实现它的目的。

如果您需要来解释为什么在代码中的注释中以某种方式完成了某些操作,那很好。只要每次更改都不是必需。这会导致像

这样的混乱评论
// fixed bug #3365

答案 2 :(得分:1)

可以说。如果您更改了代码但未更新评论,那么评论就会过时。对于这类事情我是一个巨大的坚持者,我忘记更频繁地更新评论,而不是我想承认。但是对变化的描述是(或者至少应该)从来没有错。

答案 3 :(得分:1)

不在我看来。应对代码进行注释,以便您可以轻松阅读代码。对于有错误修复的代码来说,这更为必要。

两个地方都应该得到很好的评论,很可能它们会包含重复的描述。但是它们都是出于不同的原因而使用的。当您通过源代码管理进行回溯时,通常会追踪问题是如何引入的。有好的评论可以使这个过程更容易。代码注释允许您通过代码来尝试查找当前错误或添加下一个功能。

他们应该做到这两点并理解为什么这很重要。

答案 4 :(得分:1)

评论服务器的目的不同。代码注释用于说明和解释代码片段的作用,工作原理,期望内容以及返回的内容。还有可能出现的特殊情况。

登记注释更多是为了告知您所做的更改以及更改的原因。

答案 5 :(得分:0)

不知道你是否使用注释工具,有些像eclipse这样的IDE可以很好地与CVS集成,并且如果你使用cvs注释工具的话,你会确切地告诉你修改了哪一行。