需要跟踪一个 fork 版本的 node 代码库,或者将项目组件分离到它们自己的仓库中吗?
更新:2018 年 2 月 15 日
发现这可以在一个 CLI 命令中完成:
npm install --save username/repo#branch-name
-or-commit-or-tag
上面的命令会将 Github 上的一个 node 包安装到你的 node_modules 文件夹中,并自动将其添加到 package.json 中的依赖项!
这种方法可以使用,但更像是一种变通方法而不是真正的解决方案。
考虑发布你的包到 NPM(或你选择的 JavaScript 包注册表),这是包管理的正确选择。Git 分支可以随时被删除或更改,因此不能保证依赖性的稳定性。如果这对你很重要,请发布到注册表!
从 git 分支安装还会破坏你运行 npm update
更新依赖性的能力,强制你卸载并重新安装包,以便拉取推送到分支的任何新更改。
如果你决定这样做,安装一个特定的提交哈希或者 ** git tag 要比安装一个分支名更安全。**这样,你的依赖性就与特定的提交相关联,而不是与分支上的最新提交相关联。然而,上述关于依赖性消失和更新路径破裂的警告仍然适用!你已经被警告了😉。
感谢Tierney Cyren指出了这种方法的缺陷
要从 Github 安装一个公共项目而不是 NPM 注册表,可以使用username/repo#branch-name
格式将 Github 仓库添加到 package.json 的依赖项中。
// package.json
..."dependencies": {"botkit": "jonchurch/botkit#multi-hears",}....
运行 npm install
,npm 将下载项目并将其保存到 /node_modules/
文件夹中。
在分支上推送了新更改后,删除你的 node_modules
中的包,然后再次运行 npm install。像这样:
npm uninstall botkit && npm install jonchurch/botkit#multi-hears
评论(0)