前端环境搭建——代码开发测试部署
搞前端这东东有段时间了,做点笔记。
前端环境搭建系列的目的是把前端团队作为一个整体,如何有效的团队协同开发,第一部分开发环境。
1.代码版本管理
SVN是必不可少了,版本号的规划按照项目三位版本,开发四位版本来部署。比如我要做A项目,版本号为1.0.0,我第一次提测的代码版本为1.0.0.1。每次四位版本按照tag区分。QA按照这个tag部署测试代码,OP则部署线上代码。
如果多个项目同时开发,就开分支。这些需要一个项目管理平台来管理版本。
2. 开发环境
我假设前端team的范畴是HTML CSS JS MVC中的V 和 C。最佳的环境是每个人一个开发环境,代码通过SVN同步别人的代码。但是文件的路径全部都一致。
比如
css的img.xx.com/css
js的img.xx.com/js
flash的img.xx.com/swf
后台环境,假设每个后端开发也都有独立的环境,如果和谁联调代码就让他把配置指向你的V C目录进行调试。
QA环境的debug问题,你的环境和QA环境代码部署一致,能够通过host切换静态文件,如css js flash。毕竟前端的大部分问题是前端代码的问题,V 和 C的问题就在自己的环境调试了,静态资源切换到QA的host。
数据问题,最后有个大的造数据平台,通用一份数据库,提供数据增加和修改的接口,这是理想状态,当然这个平台也会很麻烦,实在不行就通过后端的数据操作接口操作数据。
3.编译环境
可恶的前端代码裸上,会有很多问题,大部分是性能问题,还有部分是缓存问题。
所以需要提供编译环境,编译流程放在提测前是安全的,因为会经过QA的质量检测,如果在OP环节应该比较麻烦,编译代码的bug也没人去测。
编译一般解决的事情
1、批量的一些操作,比如版本号
2、代码的合并和压缩
3、代码的优化或者职能替换,比如资源打包
我遇到过的开发状况都不乐观。所以有时间自己搭下试试有多复杂。
一般有公用开发环境,就一台机器一个host,不管主干分支都放在那里,可想又多混乱,还有前端无版本管理软件,人肉维护多个并发版本。
或者有版本管理,开发环境还是多人一个,而且没有host,静态资源引入都是通过模板conf管理路径的。这样的代码不利于资源路径管理,特别是图片,加入png半透明的需要全路径,多个css合并的最好是根目录路径。
各种悲剧,此文到此结束。下篇为开发模式和模块化。