angualr2
项目在本地正常运行后,有个公共模块部分我想抽离出来单独发布到 npm
上供项目使用,在网上找了些资料,没想到发不到 npm 比 maven 也省事的多,本文重点记录将自己的 angualr2 模块发布到 npm 的主要步骤。
一、注册账号
在 NPM 网站注册一个账号,这个账号会被添加到 npm 本地的配置中,用来发布 module 用。
npm adduser
Username: your name
Password: your password
Email: xxx@gmail.com
二、登录账号
npm login
Username: fuzhutech
Password: fuzhutech
Email: (this IS public) fuzhutech@163.com
三、查看当前用户
npm whoami
四、初始化项目
npm init
执行“npm init”可以根据提示生成简单的“package.json”,这个这个文件包含了 module 的所有信息,比如名称、版本、描述、依赖、作者、license 等。
npm init
创建的“package.json
”文件只包含了基本的信息,我使用 angualr-cli
命令创建项目,然后把“package.json
”作比对,添加一些缺失的信息。
ng new ng2-fuzhutech-common
五、版本管理
npm 社区版本号,语义版本号分为 X.Y.Z 三位,即主版号. 次版号. 修订号。当代码变更时,版本递增规则如下:
主版号:当你做了不相容的 API 修改,例如有大的变动,向下不兼容,需要更新 X 位;
次版号:当你做了向下相容的功能性新增,例如新增了功能,但是向下兼容,需要更新 Y 位;
修订号:当你做了向下相容的问题修正,例如只是修复 bug,需要更新 Z 位;
先行版号及版本编译资讯可以加到「主版号. 次版号. 修订号」的后面,作为延伸。
六、发布模块
npm publish
以上完成之后,我们终于可以发布自己的 module 了。
七、忽略文件
.npmignore
“.npmignore
”文件用来定义哪些文件会被 npm
给忽略,npm
默认使用 gitignore
来忽略文件。存在 npmignore
的话 gitignore
的配置就会被覆盖。
八、安装模块
npm install –save ng2-fuzhutech-common
九、取消发布
npm unpublish <package>@<version>
已发布的版本号并不会被真正的取消,而是被占用,再次发布时需要更改新的版本号,而且 npm 只能允许撤销 24 小时以内的发布。