设为首页 收藏本站
查看: 617|回复: 0

[经验分享] 如何发布一个自定义Node.js模块到NPM(详细步骤,附Git使用方法)

[复制链接]

尚未签到

发表于 2018-1-12 21:42:15 | 显示全部楼层 |阅读模式
  咱们闲话不多说,直接开始!
  由于我从没有使用过MAC,所以我不保证本文中介绍的操作与MAC一致。
  文章开始我先假定各位已经在window全局安装了Node.js,下面开始进行详细步骤介绍:
  本文本着,以极少的文字说明以及极少的代码书写为原则来给大家演示!
  文章中上传的模块不具备任何意义!
  一、封装node.js模块时的必需项
  1.创建package.json
  每一个完整封装的node模块,必须含有一个参数明确的package.json文件!
  以下为package.json的最精简配置:
  

{    "name": "npmdesc",  

"version": "0.0.1",    "main": "npmdesc.js"  
}
  

  package.json详细配置参照表:

  2.创建npmdesc.js
  

exports.desc = function() {  
console.log(
"如何发布一个自定义Node.js模块到NPM");  
}
  

  3.创建README.md文件,文件内容可以留白(该文件的作用是放置你愿意写的任何自述说明)
  二、在github上建立包含该模块代码的公共存储库
  1.注册github账户(这里不做详细阐述,假定你已经有了github账户)
  2.创建项目

  3.如果你初次使用git,请自行了解git的使用方法(这里仅做简单描述)
  这里推荐查看廖雪峰老师对git的讲解:http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000
  

1.ssh-keygen -t rsa -C "你注册所使用的邮箱"  
2.登陆GitHub,打开“Account settings”,“SSH Keys”页面点“Add SSH Key”,填上ssh,在Key文本框里粘贴id_rsa.pub文件的内容。
  以上步骤是使你的账户与git建立通讯的核心步骤!
  仅用这些操作远远不够,如果你初次使用git,那么这一步可能将会使你看的云里雾里摸不清头脑,甚至失去继续了解下文的信心,所以我建议初学者先进行git的简单了解。
  

  4.推送项目到刚刚创建的公共存储库(这里假定你已完成以上所有内容,并对git的使用有了简单的认识)
  在你的项目根目录中依次运行以下git命令:
  

1.git init  2.git add npmdesc.js
  git add package.json
  git add README.md
  3.git remote add origin git@github.com:BGOnline-CN/npmdesc.git
  4.git commit -m "如何发布一个自定义Node.js模块到NPM"
  
5.git pull --rebase origin master
  
6.git push -u origin master
  

  以上步骤的作用(这里的截图仅做辅助理解,截图内容并不完善,具体执行步骤需参考第4步):
  git init (初始化本地git库)

  git add (暂存文件)

  git remote add origin git@github.com:XXXX/XXXX.git (使本地与远程库进行连接)

  git commit -m "XXXX" (提交暂存到本地库,-m 为你的提交信息,这个是必填的!你需要告诉git你为什么要进行本次提交。)

  git pull --rebase origin master (拉取远程库中的内容)

  git push -u origin master (将本地项目推送到远程库)

  5.修改package.json文件,填入你的项目在git公共存储库中的信息及你希望npm进行搜索时的关键字
  

{  

"name": "npmdesc",  

"version": "0.0.1",  

"main": "npmdesc.js",  

"repository": {  

"type": "git",  

"url": "https://github.com/BGOnline-CN/npmdesc"  
},
  

"keywords": [  

"npmdesc"  
]
  
}
  

  三、生成模块
  1.在你的项目根目录打开控制台窗口键入命令
  

npm pack  

  此时npm会将你的项目打包为一个后缀名为.tgz的压缩包,这就是你的Node.js模块
  2.别忘了将修改后的package.json及刚刚打包好的.tgz推送到git哦~这里我就不介绍了。
  可能在进行git操作时或多或少的会出现一些你暂时无法理解的问题。如果刚好这时你遇到了,请不要害怕,细致的摸索及强大的搜索引擎可以帮助你!任何人都是这样摸爬滚打过来的。
  当然不排除我的文章有疏漏 - -
  四、发布到npm
  1.在https://npmjs.org网站中建立账户(这里不做介绍)
  2.在命令行中使用以下命令把创建的账户添加到环境中:
  

npm adduser  

  回车之后将会提示你输入用户名和密码以及邮箱,这里密码将不会明文显示。
  出现下图说明命令执行成功!

  3.发布模块到npm
  在项目根目录执行以下命令:
  

npm publish  


  如果出现以上错误,使用如下命令即可解决
  

npm config set registry http://registry.npmjs.org   

  执行该命令后需要重新进行登录,使用第2步中的命令即可
  五、发布成功
  如果一切正常,将会出现下图:

  到这里你的 Node.js模块就已经发布成功了,你可以试试在npm官网中搜索它,并在项目中使用它了

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-434425-1-1.html 上篇帖子: 看完这篇文章才对【GIT】有了大彻大悟的认识 下篇帖子: 谈谈分布式版本管理工具Git
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表