问题描述
我对所有这个Github分叉请求请求生命周期都非常满意。 我想要做的是派生一个存储库,进行一些更改,然后在提交请求之前对项目进行尝试。
我已经分叉了仓库并对其进行了修改,但是我无法对其进行测试。
假设我将package.json中的派生库的版本提高到1.0。
1 。
然后我执行npm install -g
。
现在,我想在另一个test-project
对其进行test-project
,因此我使用新的固定版本的库(1.0.1)更新了package.json devDependencies信息。
现在我在test-project
运行npm install
,但出现此错误:
npm ERR! version not found: forked-library@1.0.1
我期望自从将其全局安装后,该项目将从我的本地npm缓存(可以在其中看到1.0.1版本)中解决该问题,但是似乎正在npm在线存储库中寻找它。
1楼
codependent
1
2015-07-31 10:24:03
尽管nwinkers解决方案更方便,但我还是将其发布为替代方案:
-
将您的
forked-library
更改推送到GitHub。 -
在右侧的GitHub
forked-library
页面中,获取“ 下载ZIP”按钮所指向的URL,将压缩文件替换为tarball并删除.zip扩展名。 例如:https://github.com/somebody/forked-library/archive/master.zip => https://github.com/somebody/forked-library/tarball/master
:https://github.com/somebody/forked-library/archive/master.zip => https://github.com/somebody/forked-library/tarball/master
。 -
更改
text-project
的package.json
中的forked-library
的版本,以指向您在步骤2中获得的修改后的URL:https://github.com/somebody/forked-library/tarball/master
:https://github.com/somebody/forked-library/tarball/master
现在,您可以在test-project
进行npm install
并针对修补的lib进行工作。
2楼
nwinkler
0
已采纳
2015-07-31 08:20:03
npm install
命令将始终尝试从npm注册表中查找发行版本。
由于您仍在开发中,因此无法在其中找到它。
要解决此问题,您可以使用npm 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
文件夹。
这将允许您使用开发版本而无需发布它。 您可以在派生库中进行更改,它们将立即在您的测试项目中可见。
这是 。