有时为模块维护节点包的分支更容易,我希望能够编辑node_modues
中通过npm install githubaccount/myrepo.git
安装的模块。
目前我对文件进行了任何更改,我必须将其复制回repo。这很乏味。
如何在npm中编辑模块并让它们由Git跟踪?
Python的pip
有一个选项,您可以在其中定义一个'egg',它将repo的克隆符号链接到site_packages文件夹。我知道这是一个不同的系统,但我发现它在过去非常有用。
答案 0 :(得分:3)
您可以使用npm link
命令执行此操作。这是如何使用它。假设您的npm模块位于~/npm-module
,而您使用npm模块的项目位于~/my-project
。
cd ~
# First clone the npm module
git clone https://..../npm-module.git
# Go into the module's directory:
cd npm-module
# Link the module
npm link
# CD into the project using the npm module
cd ../my-project
# Link the module
npm link npm-module
第一次调用npm link
将在npm的缓存目录中创建一个链接,指向npm-module的本地克隆。第二个调用将它链接到使用模块的项目(进入node_modules
文件夹)。
如果您查看项目的node_modules
文件夹,您会看到它现在包含指向npm-module
来源的符号链接。您在该文件夹中所做的任何更改也将位于克隆项目中。您可以在那里提交更改并将其推回到遥控器。
这与您使用Python的egg
功能类似。