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

expo build命令打包时读取Git提交记录还是当前文件状态?

Expo 传统构建命令读取文件逻辑解答

核心结论

expo build:android 与 expo build:ios 属于Expo的经典云构建功能,其默认设计就是基于当前分支已提交的Git快照拉取代码执行打包,而非读取本地未提交的文件状态,你观察到的现象属于工具原生逻辑,不存在操作异常。

设计原因

  • 经典云构建的工作流需要将代码上传到Expo远端服务器执行编译,基于Git提交拉取代码可以最大程度保证构建产物的可复现性,避免本地未跟踪的临时文件、调试代码、敏感配置意外混入生产包。
  • 工具在执行打包前会默认校验Git工作区状态,未提交的改动不会被纳入上传到构建服务器的代码包中,因此仅保存文件不提交的改动不会出现在最终产物里。

临时绕过方案

如果你需要将未提交的本地改动纳入构建,可以在打包命令后添加 --ignore-git 参数,工具会跳过Git校验,直接读取当前本地的所有文件状态上传打包:

expo build:android --ignore-git
# 或iOS打包
expo build:ios --ignore-git

如果是使用新版EAS Build的用户,也可以通过在eas.json对应构建profile中添加"gitCommitMessage": "NONE"配置实现类似效果。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 07:00:04