发布eas update时能否忽略本地.env文件?
如何在运行
eas update时忽略本地.env文件 根据官方说明:
运行eas update时,打包JavaScript代码会读取所有存在的.env文件。应用代码中的所有EXPO_PUBLIC_变量会被替换为发布机器(本地机器或CI/CD服务器)的.env文件中的对应值。
以下是几种可行的解决方案:
临时移走/重命名本地.env文件
最直接的临时方案:执行eas update前,把本地的.env文件重命名(比如改成.env.temp)或者移到项目外的目录,命令执行完成后再恢复回来。适合偶尔需要忽略本地变量的场景。用EAS Secrets替代本地变量+指定空环境文件
如果是在CI/CD环境中,先在Expo项目后台配置好需要的EAS Secrets(对应EXPO_PUBLIC_前缀的变量),然后执行命令时指定一个空的或不存在的环境文件:eas update --env-file .env.empty这样打包过程会优先使用云端的Secrets,同时不会加载本地的.env文件。
通过eas.json配置覆盖环境变量加载
在项目根目录的eas.json里,给update命令的对应profile添加空的env配置,覆盖默认的.env读取逻辑:{ "update": { "production": { "env": {} } } }这个方法适合长期固定忽略本地.env的场景,配合EAS Secrets使用效果最好,避免本地变量干扰。
内容的提问来源于stack exchange,提问作者IronManAYaad
相关产品推荐
相关产品推荐

