NPM - Fork模块,更改代码并将PR发送给作者

时间:2016-10-06 12:38:38

标签: node.js git npm pull-request

对于一个特定的npm包,我想创建一个包含一些代码更改的PR ..包的作者告诉我,要从特定的分支创建一个PR ..

到目前为止一切正常,我可以更改package.json中的url + branch并将特定分支加载为npm模块。另外npm install工作正常。

但后来我想更改node_modules / module文件夹中的一些代码并从代码更改中创建一个PR ..

我唯一可以肯定的工作就是首先将整个仓库拆分到一个单独的文件夹中,而不是检查X分支,而不是更改代码,每次我想检查时将其复制/传递到node_modules / module文件夹我的代码更改..而不是将其推送到我的个人github页面,并从那里创建一个拉取请求..

但每次复制/过去我的更改到node_modules / module文件夹真的很令人沮丧。

更改npm包并为其创建PR的最佳方法是什么,同时仍将代码保留在node_modules文件夹中,以便可以检查代码更改?

谢谢!

2 个答案:

答案 0 :(得分:2)

这是正确的做法。 fork github repo,创建该人告诉你的分支,进行更改并发送拉取请求。

如果您想并行工作并假设没有npm应该执行的编译步骤,您可以在node_modules中克隆分叉存储库并直接在那里工作。只要您提交并提交更改,您就可以发送拉取请求。

修改

我想说这可以是一种可以在linux上运行的可接受方法:

~/projects/your-project/node_modules
~/projects/your-project/node_modules/name-of-module (symlink to the ~/projects/your-forked-cloned-repo)

~/projects/name-of-module (It should be your forked repo that you 've cloned from github/assembla etc)
~/projects/node_modules (symlink to the ~/projects/your-project/node_modules)

答案 1 :(得分:1)

您正在寻找npm link

$ git clone your/npm-repo-fork
$ cd npm-repo-fork

# Link the project as a local dependency
$ npm link
$ cd ../some/other/project

# Use the linked project
$ npm link name-of-npm-dependency

# Now you can edit npm-repo-fork and the changes
# will be picked up by some/other/project
$ cd ../../../npm-repo-fork