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

IntelliJ IDEA调用Git报错Bad CPU type in executable求助

问题原因分析
  • 错误本质:error=86, Bad CPU type in executable 表明你指定的Git二进制文件是x86_64架构,而你的M1 Pro是ARM64架构,当前运行环境未通过Rosetta 2转译执行x86程序,导致兼容性报错。
  • zsh与bash的表现差异:
    • 你的zsh终端大概率是通过Rosetta 2启动的(比如右键终端图标选择「使用Rosetta打开」),Rosetta会自动转译x86程序,同时zsh可能存在shell fallback逻辑——当/usr/local/bin/git无法正常工作时,自动调用了系统自带的ARM64版本Git(路径为/usr/bin/git),所以你看到的是Apple Git-137.1的版本信息。
    • 而bash终端未启用Rosetta转译,直接执行/usr/local/bin/git这个x86架构的二进制文件,就触发了CPU类型不兼容的报错。
  • 路径一致但表现不同的核心:
    两次which git返回相同路径,是因为/usr/local/bin/git确实存在,但该文件是损坏或未适配ARM的x86版本。zsh靠Rosetta转译+fallback逻辑正常运行,bash则直接执行无效二进制导致报错。
验证方法
  • 检查Git二进制架构:执行 file /usr/local/bin/git,若输出含x86_64则为x86版本,含arm64则是适配M1的版本。
  • 确认zsh运行环境:执行 arch,输出i386说明是Rosetta转译的x86环境,输出arm64则是原生ARM环境。
  • 查看系统Git:执行 /usr/bin/git --version,结果应与你zsh中看到的Apple Git版本一致。
解决方案
  1. 删除无效的x86版本Git:执行 sudo rm /usr/local/bin/git,系统会自动使用/usr/bin/git的原生ARM版本。
  2. 安装适配ARM的自定义Git:用Homebrew执行 brew install git,M1上Homebrew默认将Git安装到/opt/homebrew/bin/git,调整PATH让该路径优先级高于系统Git即可。
  3. 让bash兼容x86程序:右键终端图标选择「使用Rosetta打开」后再启动bash,即可通过转译运行x86版本的Git。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.05 13:34:37