UNPKG

fdm

Version:

基于gulp的1688前端集成化工具

214 lines (105 loc) 4.63 kB
基于gulp的1688前端集成化工具——Neat 前端开发集成化工具, 贯穿前端开发过程中从项目创建到开发,测试,发布的整个生命周期。 基于[Nodejs](http://nodejs.org/)和[gulp](http://gulpjs.com/) ## 安装和配置 ### node.js 环境 本集成开发环境基于[gulp](http://gulpjs.com/),`gulp`依赖node.js 0.9以上环境,所以大家安装最新版本即可。 node.js的最新版本可以到[这里下载](http://nodejs.org/download/) ### 工具的安装 npm install -g fdm --registry http://registry.cnpmjs.org Git环境(可选,用于从git获取模板),[安装指南](http://rogerdudler.github.io/git-guide/index.zh.html) ## 帮助命令 fdm -V //查看版本 fdm -h //查看工具帮助 fdm -p //查看专属插件,从npm查询keyword为fdmplugin的模块 fdm -t //查看专属模板,从npm查询keyword为fdmtemplate的模块 ## 主要命令 ### 构建项目 fdm init [proj] [destdir] //在当前目录通过模板构建,模板可通过 fdm -t查找 fdm init mlofty //通过现有git项目构建,会自动生成easymob目录 fdm init git@gitlab.alibaba-inc.com:1688/easymob.git ### 自动化开发,需cd到项目目录 fdm start [taskName] ### 本地编译( Aone将使用此编译脚本 ) fdm build [srcdir] [destdir] 使用方法参考[doc](http://gitlab.alibaba-inc.com/fangdeng/neat/blob/master/doc/build.md) ### 盖娅相关 fdm gaea 使用方法参考[doc](http://gitlab.alibaba-inc.com/fangdeng/neat/blob/master/doc/gaea.md) ### 启动[fdserver](https://github.com/fangdeng/fdserver/) fdm server start 要使用此命令需要配置fdserver的配置文件路径。(注:原先的``fdm fdserver``改成``fdm server``) ### 全局配置 配置文件放在用户目录下(以我自己的电脑为例): linux系统配置文件放在`/Users/dongming/neat.fdm/config.json`中 windows系统配置文件放在`C:/Users/dongming.jidm/neat.fdm/config.json`中 #### 常用配置 - server配置(集成fdserver) ```` "fdserver": { config:"/Users/xxx/neat.fdm/server.config.js" //fdserver配置路径,默认指定neat.fdm下的server.config.js } ```` ## 高级进阶(开发者必读,文档完善中) ### 插件开发 规范:设置keywords为fdmplugin,如果通过下方的构建方式,keywords会默认配置好 - 构建插件模板 $ fdm init plugin - 开发插件 - 发布插件 $ npm publish --registry http://registry.npmjs.org 开发模板 规范:模板最好根据项目框架或业务场景来规范,构建项目页面所需要的最小静态资源需求。设置keywords为fdmtemplate,如果通过下方的构建方式,keywords会默认配置好,模板最好以fd-init-XXX命名,这样用户就能直接通过fdm init XXX安装 - 构建模板(开发中) $ fdm init template - 定制模板 - 发布模板 $ npm publish ### FAQ 详见[http://gitlab.alibaba-inc.com/fangdeng/neat/wikis/question-and-answer](http://gitlab.alibaba-inc.com/fangdeng/neat/wikis/question-and-answer) ### 更新记录 0.6.7 - 集成fdserver - 取消fdm fdserver命令,加入fdm server命令 0.6.5 - config.json文件支持注释 - 增加全局配置的调用功能 0.6.3 - fdm init 模板临时目录迁移支neat.fdm,不再生成在当前项目中 - fdm start 保留所有命令行参数,不只是taskName 0.6.0 - fdm gaea 命令支持命令行输入用户邮箱前缀和crid,命令行中没有输入时,终端中再提示输入 - 优化build文档和gaea文档 0.5.6 - 将fdm配置目录改为 用户根目录/neat.fdm - 优化fdm init 别名构建 - fdm init 完成命令行打印项目文档 0.5.2 - 移除gaea的配置文件configs/gaea-config.json,盖娅的工作目录默认在neat.fdm/gaea中 0.5.1 - 更新fd-gulp-cssconcat和fd-gulp-jsconcat依赖版本,修正由这两个插件引起的bug(文件不能正常合并,有的文件被合成空文件) - 优化build任务执行顺序,提高build的速度 0.4.8 - 增加编译命令fdm build - 增加盖娅环境支持fdm gaea 0.4.0 - 增加gulp平台支持 - 增加本地模拟编译支持 0.3.8 - 支持快捷启动[fdserver](https://github.com/fangdeng/fdserver/) 0.3.7 - 暴露全局config, 通用于不同项目间的gulpfile var cfg = require('fdm').config 0.3.3 - gitlab分支切换(fdm publish br) - gitlab分支daily发布(fdm publish daily) - gitlab分支正式发布(fdm publish cdn) ## 系统结构 ![系统结构](doc/img/jiagou.JPG) ## 任务分工 ![任务分工](doc/img/paiqi.JPG) ## 项目进度 ![项目进度](doc/img/jindu.JPG) ---