一般规则是什么?你什么时候提交的?
答案 0 :(得分:22)
尽早并经常提交。它最大限度地减少了在团队中工作时的冲突解决步骤。但是不要做任何破坏你的构建的东西。理想情况下,持续集成会在构建中断时通知团队。
答案 1 :(得分:19)
每当我完成一件“工作”时我都会尝试 - 只要代码编译,当然。
答案 2 :(得分:10)
答案 3 :(得分:6)
如果在后备箱上工作,每当我遇到一个不会影响我的队友的里程碑时,我都会承诺。在私人分支机构工作时,每当我达到一个里程碑时我都会承诺,我不想失去(我不在乎它是否构建)。对于个人项目,我使用mercurial并不断提交。这一切都取决于对你和你的团队有用的东西。
答案 4 :(得分:4)
使用测试驱动开发时,每次我编写新的单元测试并让它通过时我都会检查。
答案 5 :(得分:2)
这实际上取决于具体情况。
一般来说,当我在自己的分支机构工作时,我遵循2条指南
答案 6 :(得分:1)
每当我完成一个工作单元时,我都会提交:修复错误,添加功能,提高效率等等。但我尽量避免长时间的沉默。 Don't Go Dark中的建议值得一读。
答案 7 :(得分:0)
当您拥有不想丢失的代码时提交。这并不意味着你承诺中继,如果你是在一个团队中发展,你应该避免为他人破坏事情。如果您的编辑器销毁文件,您想要返工多少代码?一两个小时?
答案 8 :(得分:0)
要求提交到远程服务器的svn使得很难像你应该那样经常提交,所以我建议你尝试使用mercurial或git,以便你可以随时进行本地提交,然后将这些提交发送到svn (如果必须使用集中式svn存储库),在进行自己的清理后(通过git-svn或hg-svn)。
您询问有多少次提交提交的事实意味着svn的集中性在某种程度上妨碍了您的工作流程。一旦超越学习曲线,您将会对本地机器存储库的好处感到高兴。
答案 9 :(得分:0)
来自瘦/分布式VCS或以前使用它的程序员将进行小的更改或功能,因为本地提交非常便宜。然后,一旦需要同步,他们就会推送到中央仓库。但是因为使用SVN提交是非常昂贵的,所以使用SVN(通常)每天提交的程序员有时候变更集可能在一个非常大的块中,并且提交可能需要与功能相关联。这是不好的习惯。
所以我尝试将DVCS使用的最佳实践带入SVN。因此我会通过功能提交SVN,这样一旦更改出现问题,我就会更容易回滚。
答案 10 :(得分:0)
如果我需要添加新功能或修复错误,我通常会做的是从我需要的地方创建分支,在那里完成我的工作,检查代码并将其合并回来。你甚至可以为每个用户分解您的分支文件夹(如果您有很多用户可能没有意义),每个开发人员都会保留他们的更改。
答案 11 :(得分:0)
一般规则:
原子更改:是一个“逻辑单元”更改,您可以在提交的注释中轻松编写它。
有道理:它包括安全更新 - 编译而不是破坏功能 - 这有你在评论中不怕说的逻辑变化。
我什么时候提交:当我按照一般规则进行一些更改时,我会尝试更频繁地进行更改。
可以在此处找到一些更好的做法:http://ducquoc.wordpress.com/2011/06/09/svn-best-practices/