javascript - 无法修改和测试 fork 的 GitHub 库 - npm 错误!找不到版本

标签 javascript node.js git github npm

对于 Github forking-pull-request 生命周期,我是个菜鸟。我想做的是 fork 一个存储库,进行一些更改并在提交 pull 请求之前在项目上尝试它们。

我已经 fork 了该存储库并对其进行了修改,但我无法对其进行测试。

假设我将 package.json 中 fork 库的版本增加到 1.0.1。然后我执行npm install -g

现在我想在另一个 test-project 中测试它,因此我使用新的固定版本的库 (1.0.1) 更新了 package.json devDependencies 信息。

现在我在 test-project 中运行 npm install 但出现此错误:

npm ERR! version not found: <a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="13757c617876773e7f7a716172616a53223d233d22" rel="noreferrer noopener nofollow">[email protected]</a>

我期望自从我全局安装它以来,这个项目会从我的本地 npm 缓存(我可以在其中看到 1.0.1 版本)解析它,但它似乎正在 npm 在线存储库中寻找它。

最佳答案

npm install 命令将始终尝试从 npm 注册表中查找已发布的版本。由于您仍处于开发阶段,因此它不会在那里找到它。

要解决此问题,您可以使用 npm link 命令 - 该命令将设置指向本地开发版本的符号链接(symbolic link)。

使用方法如下:

# CD to the forked-library project
cd ~/forked-library

# Call npm link to create a global link
npm link

# CD to the test project
cd ~/test-project

# Call npm link to link the development version to this project
npm link forked-library

完成此操作后,您应该有一个从 test-project/node_modules 文件夹到本地 forked-library 文件夹的符号链接(symbolic link)。

这将允许您使用开发版本而无需发布它。您可以在 fork 库中进行更改,它们将立即在您的测试项目中可见。

这是npm link documentation .

关于javascript - 无法修改和测试 fork 的 GitHub 库 - npm 错误!找不到版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31740315/

相关文章:

javascript - 递增最大/最小高度 : of a div?

Javascript 数组多维推送?

javascript - 使用 JSON.parse 重命名 JSON 字段

javascript - 发出请求时 LoopbackJS 和 PostgreSQL 之间的连接出错

git - 在我自己的网站上托管 git 项目

git - 在 Git 中跟踪待办事项和问题

javascript - 如何为每个组件实例的元素分配唯一 ID

node.js - 如何解决此内容安全策略错误?

git - "git checkout - ..."中的 -(单破折号)是什么意思?

javascript - 从 Angularjs REST 资源发送基于文件的虚拟数据