You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在GitHub Actions中基于本地Formula构建Homebrew Bottle?

解决GitHub Actions中基于本地Homebrew Formula构建Bottle的问题

直接执行本地Formula构建Bottle时出现如下报错:

- name: build package
  run: |
    brew install --build-bottle ./Formula/mypackage.rb
    brew bottle mypackage

报错信息:

Error: Homebrew requires formulae to be in a tap, rejecting:
  ./Formula/mypackage.rb (/Users/runner/work/homebrew-test/homebrew-test/Formula/mypackage.rb)

若使用brew tap owner/mytap搭配构建命令,会默认拉取远程主分支的Formula,而非当前开发分支的本地文件。

解决方案

核心是将本地仓库作为本地tap添加,让Homebrew识别当前目录下的Formula属于合法tap,同时强制使用本地文件:

  1. 将当前工作目录作为tap添加(owner/mytap需和Formula中声明的tap名称一致):

    brew tap owner/mytap ./
    
  2. 基于本地tap的Formula执行构建:

    brew install --build-bottle mypackage
    

    或明确指定tap名称:

    brew install --build-bottle owner/mytap/mypackage
    
  3. 生成Bottle:

    brew bottle mypackage
    

完整GitHub Actions步骤示例

- name: build package
  run: |
    brew tap owner/mytap ./
    brew install --build-bottle mypackage
    brew bottle mypackage

这样就能确保Homebrew使用当前开发分支下的本地mypackage.rb文件构建Bottle,不会拉取远程主分支内容。

内容的提问来源于stack exchange,提问作者olebole

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.12 02:22:03