每天提交(回家前提交所有更改)难道不是XP实践吗?
这样做有什么好处呢?
不遵循这个原则有多大的风险?
发布于 2013-03-08 19:48:35
每天??如果你遵循这一策略,你应该比这更频繁地做出承诺。
我的想法是你很早就做出承诺。经常犯。经常同步。使提交量小且易于审查。冲突的发生是因为两个人在同一件事情上独立工作--当你在小的快速单位工作时,冲突的窗口变得小得多。剩下的冲突很小,而且很容易解决,因为每个人都有精神状态。(相对于过去6个月试图解决重大冲突的行业标准而言,这是不同的。)
缺点是你可能会被在公司里远离你工作的其他人击垮。此外,这也使得很难在可能或不想投入生产的分支上工作。许多人还认为这不是一种可扩展的策略--大型组织需要更复杂的实践。
我不同意这种批评。作为参考点,在Google提交之前,必须对所有更改进行同级检查。平均提交少于20行。提交直接发生在主分支上。有大量的单元测试和集成测试,在提交可以完成之前自动运行。(有了一个基础设施,就能以可接受的速度实现这一目标。)在谷歌,人们普遍认为,这些做法成功地扩展到了谷歌。然而,如果你拿出其中的任何一件,它就不会。
发布于 2013-03-08 19:43:57
让每天(如果不是更频繁的话)提交的概念来自于连续积分的思想。CI的基本思想是,开发人员应该每天集成他们的更改几次,从而消除每个开发人员单独开发几个星期的历史规范,然后花费几个月的时间来集成他们所有的不同部分。大多数CI工具自动化构建代码更改和运行单元测试套件的过程,因此开发人员负担很小。
在此背景下,以下是对您问题的直接回答。
在回家前提交所有更改的好处是什么?
不做在回家前提交所有更改的风险有多大?
发布于 2013-03-08 20:00:52
我认为日常提交(或更多)通常是一个很好的软件工程实践,不管使用什么方法。一些好处(不按特定顺序)
检查次数较少的一些缺点
https://softwareengineering.stackexchange.com/questions/189811
复制相似问题