能否介绍一些版本控制+版本部署+测试+上线+abtest的互联网后台开源项目
大一点的互联网公司基本上都有自己的后台管理系统。程序员可以下载代码进行修改,然后上传进行autotest,之后测试人员在进行测试,然后上线进行abtest等。
而小公司一般就用svn或是git等,当服务器增多就会比较麻烦。并且也不方便测试~
不知道有没有相关的开源项目,能够实现上述的这些功能~ 还请大牛们多多指点!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
大公司也没你说的那么吓人,我以前在的几家公司,很多部门开发流程其实也很原始。不过我们当时实践过一些方案,应该业内还比较通用,分享一下。
你提的问题我们当时是通过实施CI(持续集成)来解决的,使用的工具是Hudson,这里强烈推荐一下,比Curise Control要好用不少。
对于Java Web项目,我们一般会搭建三套服务器,分别是:test、alpha、product,对应:日常测试环境、alpha测试环境、线上环境(可能多台)。
日常开发流程大致为:
当项目进入alpha测试阶段时,我们会在每日构建时多部署一份到alpha环境上(例如可能是一台有外网IP的服务器),这样测试人员以及用户测试员就可以在更接近真实线上环境的alpha环境中测试了。
最后,当一切测试都OK准备上线时,手工触发一次部署到product服务器的构建(脚本里必须做好足够的备份工作)即可做到一键上线,当然相应的还有一键回滚(如果上线失败的话),不过一般来说上线过程都有运维人员在场,万一有个三长两短也来得及补救。
之后我们做Android开发项目,也类似如此,只是将部署到Java Web服务器改为了发布apk包到一个ftp/http下载服务器,由测试人员去下载最新版本到手机进行测试。
这里面当然还有很多细节的东东,比如项目间依赖管理、部署必须做到out-of-box、环境配置文件切换等,但大致来说整个流程如此。