npm通过github url来安装私有库

背景

有时候我们想要安装的node Package是来自我们自己开发的二方包,但是对于个人开发者来说,也许我们没有私有的npm registry。这时我们可以通过自己私库的github url来用npm安装二方包。

方法

请注意,通过github url安装的前提是project里有package.json。

  1. 通过npm cli安装github public project
javascript 复制代码
npm i https://github.com/user_name/node_project_name

也可以通过如下方式安装具体的某个commit:

shell 复制代码
npm install use_name/node_project#commit

安装branch:

shell 复制代码
npm install use_name/node_project#branchName

通过tag或者version来安装

shell 复制代码
npm install use_name/node_project@tag #user_name/node_project@release
npm install use_name/node_project@version #user_name/[email protected]
  1. 安装私库
    私库的安装需要使用git的ssh repo link:
shell 复制代码
npm install git+ssh://[email protected]:user_name/node_project.git

二方包导出

Node.js 支持 用于在 package.json 中定义入口点的新字段,称为 "exports"。该字段是在 package.json 中定义 "main" 的更强大的替代方法,并且可以控制您的包的哪些部分暴露给引用者。

这是一个支持 CommonJS 和 ESM 的单独入口点的 package.json:

Here's an package.json that supports separate entry-points for CommonJS and ESM:

javascript 复制代码
// package.json
{
    "name": "my-package",
    "type": "module",
    "exports": {
        ".": {
            // Entry-point for `import "my-package"` in ESM
            "import": "./esm/index.js",

            // Entry-point for `require("my-package") in CJS
            "require": "./commonjs/index.cjs",
        },
    },

    // CJS fall-back for older versions of Node.js
    "main": "./commonjs/index.cjs",
}
相关推荐
互联网搬砖老肖16 分钟前
Web 架构之 CDN 加速原理与落地实践
前端·架构
会飞的鱼先生17 分钟前
javascript中Cookie、BOM、DOM的使用
前端·javascript·chrome
OpenTiny社区21 分钟前
开源之夏·西安电子科技大学站精彩回顾:OpenTiny开源技术下沉校园,点燃高校开发者技术热情
前端·开源
多多*29 分钟前
基于rpc框架Dubbo实现的微服务转发实战
java·开发语言·前端·redis·职场和发展·蓝桥杯·safari
灏瀚星空35 分钟前
用HTML5 Canvas打造交互式心形粒子动画:从基础到优化实战
前端·html·html5
Jackson__1 小时前
聊一下HTTP 与 HTTPS 的区别,以及HTTPS 的加密方式
前端·面试
好运yoo1 小时前
npm install的原理
前端·npm
Jiaberrr1 小时前
uniapp 安卓 APP 后台持续运行(保活)的尝试办法
android·前端·javascript·uni-app·app·保活
不老刘1 小时前
uniapp+vue3实现CK通信协议(基于jjc-tcpTools)
前端·javascript·uni-app
MarkHD1 小时前
AI编程助手入门指南:GitHub Copilot、Cursor与Claude的安装与基础使用
github·copilot·ai编程