NPM能否安装.git文件夹作为依赖项?

6

在开发过程中使用npm link更新依赖项有点麻烦。

NPM是否有类似Composer的“--prefer-source”选项,以将依赖项安装为版本控制存储库?

3个回答

4

Git仓库永远不会直接克隆到您的应用程序中。它们总是遵循以下过程:

  1. npm将仓库裸克隆到$TMPDIR
  2. npm将该克隆克隆到您的npm缓存中的目录中,然后检出请求映射到的treeish分支。
  3. npm从该检出生成可安装的软件包tarball,然后将其放置在您的npm缓存中。
  4. 缓存的tarball被安装到您的应用程序中。

如果您希望直接从项目的Git checkout中工作,并保留所有子模块,则最好的选择可能是为具有子模块的项目进行npm链接,然后将其npm链接到使用它的软件包中。这比在package.json中使用Git URL更麻烦,但它将为您提供所需的文件布局控制。

来源:https://github.com/npm/npm/issues/6700#issuecomment-71302066

这是有关npm在Github上的功能请求:https://github.com/npm/npm/issues/7375


1
另一种解决方案是npmgitdev。这是一个包装器,允许您直接在node_modules内部使用git仓库。

-1

4
仍会丢失.git文件夹。 - jdewit

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接