2017-06-21 46 views
2

npm允许使用自定义git URL来指定依赖关系(请参阅npm install private github repositories by dependency in package.json)。构建Git依赖于全局npm安装

但是,这些依赖关系通常打包并published npm注册表,因此它们可以按名称安装。这个发布过程通常包括通常在github中不可用的构建文件,缩小文件等。

使用自定义git URL安装依赖关系时,可能需要这些build,minify等文件,但它们将不可用。

要生成这些文件,可以使用npm scripts在安装生命周期中运行挂接。但是,我找不到合适的脚本来完成这个任务:

  1. Prepublish不会在全球安装运行。将弃用prepareprepublishOnly
  2. 准备也只能在本地安装上运行。 (编辑:还准备在全球安装运行,不像是什么在npm scripts docs说)
  3. 预组装运行npm packnpm publish和之前也当安装git的依赖(如the documentation解释)。但是,在全局安装(节点LTS版本:v6.11.0,npm版本(来自节点LTS):3.10.10)中尝试此脚本时未触发它。
  4. 预安装和安装是不推荐在best practices

不要使用安装。使用.gyp文件进行编译,并预先发布其他任何内容。您几乎不需要明确设置预安装或安装脚本。如果您正在这样做,请考虑是否有其他选择。安装或预安装脚本的唯一有效用途是编译,必须在目标体系结构上完成。

  • 安装后将在包装,这是不期望的行为的本地安装也运行。
  • 回答