2009-05-19 117 views
0

免责声明我不做代码审查,所以这个问题纯粹是学术兴趣。代码审查之前应该在哪里存储代码?

我看到很多帖子在stackoverflow,主张/要求代码审查之前它被允许进入源代码管理。

如果你这样做,你在哪里存储代码未经审查的代码,以及你如何处理开发人员必须更新代码来处理其他检查产生的冲突的问题 - 你是否需要他来获取他的代码代码再次审查?

谢谢。

回答

4

代码应该检查到你的仓库(SVN,TFS等)。如果你想阻止它进入主干,那么你可以设置一个开发(甚至是每个开发者)分支。

3

未审核的代码仍在测试中。信任是发展中的重要事情。所以答案是代码只属于版本控制系统。从那里有一些得到审查。如果有问题,可以回滚。其他的事情在大多数时间里都不是什么大事。请记住,存储库中的代码不是“正在生产的代码”

每个人都应在提交之前从存储库进行更新。如果您检测到很多更新,再次运行测试真的可行。如果没有问题比提交。

-2

我们将它存储在开发人员的桌面上。它没有签入SVN,因为它尚未完成。

如果代码很多,那就是一个问题 - 您等待太久才能查看。

如果这是一个合理的代码量,它可以通过电子邮件发送给审阅者。也许它需要一个ZIP文件来保持它的组织。

有时我们会将其发布到SharePoint,但这很少见。电子邮件通常工作正常

+0

代码具有值(例如,用于公司或开发团队),即使它没有完成。在版本控制之前,它没有获得版本控制提供的优势。 – 2009-05-21 04:15:21

0

即使在向利益相关者交付结果之前,我目前的团队也会进行代码审查,所以我在倡导仅在代码审查后提交源代码控制权的阵营中。

也就是说,一种可能性是将补丁文件存储在磁盘上的目录中,而不是提交到源代码管理。另一种选择是使用一个单独的分支,以便在合并到目标分支之前承诺进行更改,但是我担心这种方法会带来危险。

1

学术问题的学术答案,因为我们不做代码审查。

所有东西都被检入源代码管理。如果它没有完全正常工作/测试/审查,它将进入该开发者的个人分支。

1

这种做法是使用像Git这样的DVCS的一个很好的理由。开发人员可以在没有提交的情况下工作更长的时间,从而允许进行代码审查,但仍然可以使用我们已经了解的版本控制技术。如果你正在使用类似SVN的东西,你必须为每个bug /特性/需要编写的东西分支,并在代码检查之后重新整合它......这可能是痛苦的。

1

这实际上取决于团队设置了哪些工具和程序。

对于非正式的代码审查,你可以简单地检查到版本控制,并让其他开发者审核他们自己的时间表;然后单独检查审查发现的问题。 (这就是我们的团队所做的)

对于更正式的工具辅助代码审查工具,如Google的Rietveld和(我敢肯定)智能熊的Code Collaborator可以让您上传代码进行审查并拥有微型版本控制功能,因为它在审查过程中进行了更新,因此每次提交的样式历史记录。 (如果您有兴趣了解更多关于代码审查,智能熊有关于这个问题的free book