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小时以内的发布。


fuzhutech
1 声望0 粉丝