我的问题是,当我试图安装一个版本设置为某个git分支的包时,我的构建会中断,因为存储库不包含我的npm包所包含的dist
文件夹。
下面是我想安装的包。@me/myPkg": "github:me/myPkg#myBranch
那么我的仓库应该包括dist文件夹吗?或者在这种情况下最好的做法是什么?我不想把我的dist包发布到github上,因为那样我会有奇怪的合并冲突,因为dist文件夹包含了我所有的类型声明和缩小的javascript文件,但也许这是首选的方式?
我的另一个想法是在我的包中有一个postinstall脚本。npm install不会为依赖项而安装它们。
你如何发布你的包?例如,我有一个GitHub动作设置在我的仓库,当提交到master
,将自动执行几个步骤
-
运行
npm install
Setup Git Credential variables(以后再用)过程) -
运行
npm test
(如果测试失败,则整个进程失败) -
运行
npm run release
(我使用standard-version
自动版本增量和变更日志创建,并在构建之前执行此操作版本可以反映在构建的代码中) -
运行
npm run build
-
运行
npm run publish
推送到npm -
提交我的版本更新作为一个标记到Git
My GitHub Action在一个临时容器中完成所有这些,它为构建过程旋转。一旦完成,整个容器都要被翻过来。我使用.npmignore
文件来告诉publish
我不想在最终包中看到什么(注释文件,构建工具等)。