我只是和另一位开发人员(比我更高级)交谈,并试图说服他们我们应该通过Cruise Control实现持续集成。他告诉我,这不起作用,因为他提交的代码不会一直编译到存储库,以便进行备份。而通知我们失败的自动化构建只是噪音。
向回购邮件提交垃圾听起来对我不好。但我不知所措,不知道该说些什么。有什么选择?在不添加大量无意义修订的情况下,在另一台计算机上备份代码的最佳做法是什么?
BTW,我们的版本控制系统是SVN,可能不会很快改变。答案 0 :(得分:25)
开发分支机构并准备好进行测试,并希望将分支机构纳入主线。让持续集成服务器依赖主线(在svn大多数时候称为主干)进行新版本的构建和验证。
答案 1 :(得分:3)
如果他正在检查无法编译的代码,那么团队中的其他人如何编译?
一般来说,我认为将代码检入主分支是不可编程的;对于那些指望能够从源代码控制和构建中获取最新信息的人来说,这真的很不体贴。
TFS有一些很好的功能来帮助解决这个问题(搁置/取消搁置);不确定SVN是否有。大多数情况下,当某人正在进行巨大的更改并且他们需要能够签入损坏的代码时,最好进行分支,并让他们将更改合并到主线。
答案 2 :(得分:0)
如果您正在检查其他开发人员正在使用的分支中的破坏代码,并且没有保持关于该和的通信线路有充分理由......那么,你的同事没有遵循最佳做法。
互相接受的最佳做法可能是要求“破解构建”类型的“备份”签名发生在代码的开发人员 - 私有分支上,并且每当代码处于不会破坏构建的状态或单元测试,它被合并到Cruise Control正在观看的主干分支。
答案 3 :(得分:0)
除非他是分支机构中唯一的开发人员(听起来并非如此),否则他不应该提交破解代码。在开发中存在许多用于“备份”代码的解决方案,包括仅创建当前行的专用分支或编写将工作目录备份到文件服务器的小脚本。
答案 4 :(得分:0)
使用git进行本地备份/历史记录,使用git-svn工具仅检入工作版本。