發布一個npm包,更新包,刪除包
如何將自己的項目 發布為一個 npm 包,并掌握 更新 和 刪除 的操作流程。
🚀 一、發布一個 npm 包的完整流程
? 1. 注冊并登錄 npm 賬號
如果還沒有賬號,先注冊:
- 官網注冊:https://www.npmjs.com/signup
然后在終端登錄:
npm login
輸入用戶名、密碼和郵箱即可。
? 2. 創建你的包項目
新建一個項目目錄:
mkdir my-awesome-lib
cd my-awesome-lib
npm init -y
編輯 package.json
,確保以下字段有意義:
{"name": "my-awesome-lib", // 包名,全局唯一"version": "1.0.0", // 初始版本"main": "index.js", // 入口文件"keywords": ["utils", "tools"],"author": "Your Name","license": "MIT"
}
創建 index.js
:
module.exports = function sayHello(name) {return `Hello, ${name}!`;
};
? 3. 發布你的包
npm publish
🎉 成功后,你可以在 npm 官網 搜索并查看你的包!
?? 注意事項(發布失敗的常見原因):
- 包名重復(需唯一) → 可以加前綴,比如
@yourname/yourlib
(私有作用域包) - 沒有登錄
- 忘記上傳入口文件
.npmignore
忽略了必須的文件
🔄 二、更新 npm 包版本
每次發布更新必須修改 package.json
中的版本號!
npm version patch # 小更新 1.0.0 → 1.0.1
npm version minor # 新功能 1.0.0 → 1.1.0
npm version major # 大版本變更 1.0.0 → 2.0.0
然后再次發布:
npm publish
? 三、刪除一個 npm 包(謹慎操作)
?? npm 官方限制:包發布后 72 小時內才能刪除;超時只能 unpublish 某個版本
? 刪除整個包(必須在 72 小時內):
npm unpublish my-awesome-lib --force
? 刪除特定版本:
npm unpublish my-awesome-lib@1.0.0
🔒 一旦超時,建議:
- 發新版本修復
- 添加
deprecated
標記:
npm deprecate my-awesome-lib@"<1.1.0" "This version has critical bugs, please update to 1.1.0+"
🧪 練習建議
- 新建一個包目錄
- 發布一個簡單的工具函數(如格式化日期、加法函數)
- 嘗試更新一個版本
- 使用其他項目
npm install
引用它