【问题标题】:How can i install npm module from github and build it?如何从 github 安装 npm 模块并构建它?
【发布时间】:2018-02-21 10:51:04
【问题描述】:

有很多带有节点模块的 github 存储库。 其中一些作为 NPM 包发布,我可以通过npm install <module> 安装它。 有时 github 只包含源代码,而在 package.json 我可以看到 "prepublish": "npm run build" 并且 NPM 获取包; 我也有可能从 github 存储库(npm install <project>/<resository>)获取模块,但默认情况下 node_modules 获取源,然后我必须手动构建它(例如:npm run build)。有什么选择可以从 Github 获取源代码然后立即构建?

谢谢!

【问题讨论】:

    标签: node.js github npm package installation


    【解决方案1】:

    NPM 将自动运行生命周期步骤,无论它来自 Github、另一个 SVC 系统还是 NPM。查看生命周期脚本,您可以将构建过程放在 here 中。无论你想从 Github 安装什么项目,都已经将它们的构建过程放在了适当的 NPM 脚本中。请注意,NPM 改变了这些脚本在最近 4 个 NPM 版本中的执行方式和时间

    在您的项目上运行 npm i "jameswomack/string-is-empty#git-install-npm" -SE 并查看它是否有效。

    查看从 Github 安装的测试 repo here

    查看从生命周期脚本输出并从 Github here 安装的测试 NPM 包分支

    【讨论】:

    • 是的!这就是我需要的!谢谢!还有一个问题:如果我需要一些构建模块(例如:babel),我怎样才能添加这个包只用于构建过程?
    • @AlexanderKozlov 如果您需要在安装包时运行构建过程,它需要位于常规依赖项块中。但是如果你可以在模块发布之前运行构建,或者在它被推送到 Github 之前,你可以将构建依赖项放在 devDependencies 中,当人们使用你的包时不会安装。
    • -SE 参数是什么? docs 中缺少它
    • 所以只有postisntall 脚本运行?如果有一个build 脚本并且安装只拉取源并且您需要构建它怎么办?
    • @cdalxndr --save-exact
    猜你喜欢
    • 2018-06-25
    • 2021-01-25
    • 2016-12-23
    • 2018-06-28
    • 1970-01-01
    • 2021-04-13
    • 2016-07-08
    • 2023-03-25
    • 1970-01-01
    相关资源
    最近更新 更多