# 模版开发规范

mili通过clone/pull模版仓库来获取模版信息，而不是npm包的模式来获取模版信息。
究其原因，npm管理上命名不区分用户或者团队，而mili的目的是一个对一个群体的开发维护升级流程进行统一规范的脚手架工具。
这意味着不同的群体可能有相似的模版命名，而npm包将命名越来越困难和复杂。

因此mili选择将模版托管在git仓库中，而不是npm上。
不过，mili依旧需要能够了解项目历史版本等历史信息，才能实现一些重要功能，所以必须对版本控制加以规范。
如果不遵守规范，将会导致部分依赖版本控制的功能无法使用。（例如：安装某个历史版本的模版、`mili update`)


* 版本号必须符合[semver](https://www.npmjs.com/package/semver)规范。
* package.json内的版本号为模版的当前版本，mili据此识别当前模版版本号。
* 务必为每个版本添加符合npm规范的tag。例如：v0.0-alpha.1。否则mili将无法切换版本和获取版本清单。
