javascript - 从 GitHub 存储库安装包
问题描述
我的问题是,当我尝试安装版本设置为某个 git 分支的我的包时,我的构建正在中断,因为存储库不dist
包含我的 npm 包所包含的文件夹。
这是我想要安装软件包的方式。
@me/myPkg": "github:me/myPkg#myBranch
那么我的存储库应该包含 dist 文件夹还是在这种情况下的最佳做法是什么?我不想将我的 dist 包发布到 github 上,因为这样我会遇到奇怪的合并冲突,因为 dist 文件夹包含我所有的类型声明和缩小的 javascript 文件,但也许这是首选方式?
我的另一个想法是在我的 package.json 中有一个 postinstall 脚本,它构建了源文件,但是我还必须安装 devDependencies 并且 npm install 不会为依赖项安装它们。
解决方案
你是如何发布你的包的?例如,我的存储库上有一个GitHub Actions设置,当提交到 时master
,将自动执行几个步骤
运行
npm install
设置 Git 凭证变量(用于以后的过程)运行
npm test
(如果测试失败,则整个过程失败)运行
npm run release
(我standard-version
用于自动版本递增和更改日志创建,并在构建之前执行此操作,以便版本可以反映在构建的代码中)跑
npm run build
运行
npm run publish
推送到 npm将我的版本更新作为标签提交到 Git
我的 GitHub Action 在它为构建过程启动的临时容器中完成所有这些工作。完成后,将整个容器扔掉。我使用一个.npmignore
文件来说明publish
我在最终包中不需要的内容(注释文件、构建工具等)。
推荐阅读
- css - 导航选项卡上的 CSS 形状
- ubuntu-16.04 - 无法在 Ubuntu 服务器上安装 docker
- redux - 不可变 JS:更新嵌套的动态对象
- php - 如何使用 laravel 5.4 使用 cartalyst sentinel 发送激活电子邮件/代码
- c# - 如何在 ASP.NET MVC5 Razor 语法中向 SelectListItem 添加类?
- postgresql - 有没有办法将时间戳转换为纪元毫秒
- mysql - phpmyadmin 在侧边栏中显示表格,但表格不存在
- javascript - 如何在 html 5 画布上旋转圆圈内的图片?
- excel - 变量 sumifs 和范围
- amazon-web-services - API 网关的 S3 重定向规则不起作用