有没有理由为什么每当有人提交一些代码时你都想要通知?

时间:2008-10-10 01:13:48

标签: svn development-process

我知道有些事情比如做手动检查以确保提交的代码从根本上是正确的。但除此之外?我问的原因是因为一个大项目每天都有这么多提交。

9 个答案:

答案 0 :(得分:6)

一般来说,提交通知非常有用,因此您可以每天了解代码中发生的情况。例如,我知道何时实现了一个新功能,或者检查了错误修复。如果有这么多提交,这会在噪声中丢失,那么可能值得过滤或减少您看到的提交消息的数量(也许例如,您只能将其限制为您使用的特定模块。

话虽如此,除了给其他开发者提供至少轻松审查代码的机会外,它还可以通知人们:

  • 现在是从源代码管理运行更新并在需要时合并任何新更改的好时机
  • 嘿,有人在Foo中发现了一个正则表达式解析错误但忘了用它更新Bar
  • 哦,鲍勃正在研究Baz模块,我应该让他看看这个

你明白了。基本上,它旨在帮助提高整个集团的透明度,不仅仅是为了更多地关注提交,而是为了改善整个团队的开发周期。

答案 1 :(得分:4)

如果某人对您自己可能正在处理的一个或多个程序进行更改,则会很有用。如果您愿意,可能需要解决一些可能需要进一步沟通的冲突。

我见过程序员A做出一些改变然后几天后休假的情况。程序员B也在研究相同的程序,当时程序员B提交了他的更改时发生了一些冲突。通常情况下这并不重要,加上团队成员之间应始终保持沟通。在这种情况下,程序员B对程序员A所做的更改有一些疑问,但是必须等待一周,直到该程序员返回。提醒电子邮件,即使是自动生成的电子邮件,在这种情况下也会有所帮助。

只是我的两分钱。

答案 2 :(得分:4)

上述许多内容在收到签到通知时非常有用。我通常将它用于以下几个方面:

  • 如果项目以某种方式中断,有时我可以更快地磨练问题,因为我已经知道已进入系统的签入。它可能会更快地指出我的解决方案
  • 它提供了一组易于搜索的签到(至少因为我在电子邮件中收到它们)。是的,您的源控制系统具有所有这些信息,但搜索整个签到注释可能并不容易。通过电子邮件,我可以回头搜索用户,模块,关键字等,并让Outlook咳嗽相关的电子邮件。
  • 我可以轻松跟踪年轻的开发者以及他们正在做的事情。它让我有机会看到他们何时检查代码以及他们使用代码做了什么。它提供了持续的机会,可以在其他定期安排的事情之外进行指导,例如代码审查。
  • 它为团队提供了一种跟踪进度的方法,并记录他们何时可以检查冲突。

即使有很多通知,我也不认为必须完整阅读。我浏览了他们一堆,但是当我需要更多信息时,这足以让我回到相应的提交。

答案 3 :(得分:2)

当然,你想要把代码放入眼中,这样你就可以了解团队中其他人正在做的事情,而且你只是在编写代码时陷入困境。

即使您没有监控质量代码,也可以了解其他人正在做什么。

它有助于建立团队。

答案 4 :(得分:0)

我发现它主要用于跟踪。一般来说,这样的自动通知会被过滤到我的邮件程序中的一个桶中,以及“烟雾过滤,冒烟失败”类型的电子邮件......然后当出现故障时,您可以相当直接地将其追溯到该组签入。

请注意,还可以通过checkins曲线的形状来直观地了解项目的成熟度 - 每天更改的代码行数与代码库总大小的函数关系。它实际上确实给出了你何时“完成”的合理想法......

希望这有帮助!

答案 5 :(得分:0)

通常我们会有更新,让每个人都知道某些内容已经更新,需要进行同行评审。如果您不必分配一个用户,您可以获得它并在有时间时处理它。

我看到有人发布了一个系统,当他们在代码样式注释日志中提交快速简单的“最新内容”时,会向Yammer发送Twitter样式消息。整齐。现在找不到链接。

答案 6 :(得分:0)

在许多公司中,代码审查是强制性的,但是在荣誉系统上完成。电子邮件提交通知为这些环境实施“信任,但验证”机制。

答案 7 :(得分:0)

我主要用它来衡量项目的心跳。每个提交消息都是一个脉冲。随着时间的推移,你会对“正常”脉冲“发出”的声音有所了解。

在正常的一天,我们得到4到6个提交消息。当迭代日期到来时,它会减慢到1或2,并在迭代发布前几天停止。在迭代后的一两天,它再次开始拾取,如果发现错误,我们可以每小时获得1个提交消息,因为错误已得到修复。提交数量很少的常规日可能意味着开发人员在某些功能上遇到困难,或者在堆栈溢出上花费太多时间。

我还发现信息提交消息非常有用。有时,管理员或测试人员甚至不必向开发人员询问功能或错误的状态 - 只需查看提交消息,看看是否有任何工作要做。

答案 8 :(得分:0)

我的理解是,向开发人员提交CCing提交报告的主要原因是为了避免冲突:您看到对正在使用的文件的提交,因此您甚至在提交之前就知道自己遇到了麻烦。然而,这是相当令人分心的,所以有工具(例如,Palantir,旧的IBM Jazz)将实际显示哪些文件被同时编辑。

相关问题