我怎样才能将我在node_modules中做出的更改提交回git?

有时为模块维护一个节点包的分支会更容易,我希望能够通过npm install githubaccount/myrepo.git编辑node_modues中的模块。

目前,我对文件所做的任何更改都必须复制回到回购站。 这很乏味。

如何在npm中编辑模块并通过Git跟踪它们?

Python的pip有一个选项,你可以定义一个'egg',把一个repo的克隆链接到site_packages文件夹。 我知道这是一个不同的系统,但是我发现它在过去非常有用。

您可以使用npm link命令来执行此操作。 以下是如何使用它。 假设您的npm模块位于~/npm-module并且您使用npm模块~/my-project位于~/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的caching目录中创build一个指向npm-module的本地克隆的链接。 第二个调用会将其链接到使用该模块的项目(到node_modules文件夹中)。

如果你看看你的项目的node_modules文件夹,你会发现它现在包含了一个到npm-module的源代码的符号链接。 您在该文件夹中所做的任何更改也将在克隆的项目中。 您可以在那里提交更改并将其推回到您的远程。

这与Python的egg特性相似。

这是npm链接文档 。