Yeoman是什么?
Yeoman按照官方说法,它不只是一个工具,还是一个工作流。它其实包括了三个部分yo、grunt、bower,分别用于项目的启动、文件操作、包管理。
Yo: Yo是一个项目初始化工具,可以生成一套启动某类项目必需的项目文件。
Bower: 一个客户端技术的软件包管理器,它可用于搜索、安装和卸载如JavaScript、HTML、CSS之类的网络资源。
GruntJS: GruntJS是基于JavaScript的命令行构建工具,它可以帮助开发者们自动化重复性的工作。
安装
基于nodejs,需要先安装node,安装时要确保 Add to PATH 被安装进去,然后安装依赖的包。
 –安装git,http://git-scm.com/downloads,我是windows版本,安装的时候需要注意勾选Run git from the Windows Command prompt (从Windows命令提示符下运行git)项。
 –安装gruntjs,参考之前的文章:一步一步安装Grunt
 –Bower是一个客户端技术的软件包管理器,它可用于搜索、安装和卸载如JavaScript、HTML、CSS之类的网络资源。
安装国内cnpm源
sudo npm install cnpm
安装bower:
 sudo cnpm install -g bower
安装完成后执行:
 sudo cnpm install -g yo grunt-cli bower
 其中 -g 代表要把 yo , grunt-cli , bower 这三个套件安装到全域 (global)
创建项目:
 在命名行下,进入相应的目录后,输入:
 sudo cnpm install -g generator-angular
 等执行完成后,输入:
 yo angular
 会出现由符号拼成的Yeoman的标志人物,及一些选择项。
 根据需要进行选择操作,yo 会在最后开始完成所有的安装工作。这个命令执行要2分钟左右,会自动下载很多的依赖包。
AngularJS项目结构(Yeoman)
 .tmp:临时目录
 app:开发的源代码的目录
 dist:生成用于发布的项目
 node_modules:nodejs依赖包
 test:测试文件的目录
 .bowerrc:bower属性
 .editooconfig:对开发工具的属性配置
 .gitattributes:git属性的配置
 .gitignore:git管理文件的配置
 .jshintr:JSHint配置
 .travis.yml:travis-ci持续集成的配置
 bower.json:bower依赖管理
 Gruntfile.js:grunt开发过程管理
 karma.conf.js:karma自动化测试
 karma-e2e.conf.js:karma端到端自动化测试
 package.json:项目依赖文件
启动项目:
 grunt server
好吧,遇到问题了,提示”unable to find local grunt”,原因大概是grunt需要安装在项目目录中。输入:
 sudo cnpm install grunt –save-dev
如果还是报错,请使用
sudo cnpm install 
 将安装包放在 ./node_modules 下(运行cnpm时所在的目录)
再次执行grunt server,就会发现浏览器被自动打开:http://localhost:9000/#/
执行:
 grunt --force  |  
  
生成用于部署的目录dist。
至此结束。
来源:oschina
链接:https://my.oschina.net/u/2718657/blog/1837691