无法在 Mac OS Big Sur 上运行 git

Posted

技术标签:

【中文标题】无法在 Mac OS Big Sur 上运行 git【英文标题】:Unable to run git on Mac OS Big Sur 【发布时间】:2021-05-09 20:09:36 【问题描述】:

无法在运行 Big Sur 的新 MacBook 上运行 git

当我尝试运行 git 时,我收到以下错误: xcrun: 错误: 无法加载 libxcrun (dlopen(/Library/Developer/CommandLineTools/usr/lib/libxcrun.dylib, 0x0005): could not use '/Library/Developer/CommandLineTools/usr/lib/libxcrun.dylib' 因为它不是兼容的拱门)。

我按照强制加载哪个架构的方法,建议here,但还是遇到了错误

现在,运行该建议后,我看到以下错误: 'manpath: 错误: 无法加载 libxcrun (dlopen(/Library/Developer/CommandLineTools/usr/lib/libxcrun.dylib, 5): 找不到合适的图像。确实找到了: /Library/Developer/CommandLineTools/usr/lib/libxcrun.dylib:mach-o,但架构错误 /Library/Developer/CommandLineTools/usr/lib/libxcrun.dylib:mach-o,但架构错误)。'

我还在该错误消息之前安装了 home-brew,尽管我不知道这会是什么关系。

我真的缺乏与 Xcode 交互的经验。我觉得在我以前的 Mac 上我可以启动并运行,没有任何麻烦,但已经有一段时间了,所以也许我忘记了。

如何确定 Xcode 和命令行工具是否安装正确?如果不是,推荐的添加方式是什么?

编辑:我尝试安装自制软件以查看是否可以将其用作解决方法,并尝试使用它来安装 git,但收到以下错误:

'brew install git 正在更新自制... 错误:无法以英特尔默认前缀 (/usr/local) 安装在 ARM 处理器上的 Homebrew 中! 请使用其中一种在 /opt/homebrew 中创建新安装 “替代安装”来自: https://docs.brew.sh/Installation'

我正在使用带有新 M1 芯片的 Macbookpro - 这可能是相关的吗?

【问题讨论】:

再次尝试安装命令行工具? xcode-select --install? 谢谢,我继续尝试并收到以下消息:'xcode-select:错误:命令行工具已安装,使用“软件更新”安装更新'-所以它出现 xcode已安装但可能不正常?你知道软件更新的命令吗? 然而,如果我运行 softwareupdate --list 没有可用的更新被返回:-/ 尝试从 App Store 删除 Xcode 并重新安装? 【参考方案1】:

好吧,男孩会觉得我很愚蠢吗?问题是我没有安装 xcode。我很困惑,因为错误消息似乎表明 xcode 已经存在,并且我的机器上有一个 xcode 目录 - 也许该目录是为准备 xcode 而预先安装的?

无论如何,我通过从应用商店下载并安装 xcode 解决了我的问题。也许这会帮助其他人

【讨论】:

错误信息非常误导:“错误:命令行工具已安装,使用“软件更新”安装更新”【参考方案2】:

哇。现在我也觉得自己很傻。我也没有安装 xcode,但我确实认为我已经安装了,因为我已经将它安装在我的旧机器上。显然,在将所有内容转移到新机器时,xcode 并没有出现。

【讨论】:

【参考方案3】:
    首先,在 App Store 中安装或更新 xcode 然后,在终端运行sudo xcodebuild -license 并在 Xcode 许可协议末尾键入 agree

现在可以使用git

【讨论】:

从 12.x 更新到 XCode 13 后,这对我有用。【参考方案4】:

您也可以从https://brew.sh/ 获取 git,我相信这很常见!

编辑后,我没有可用于测试的 Apple Silicon 芯片,但 brew docs 说它应该安装到 /opt/homebrew(字面意思是在该路径中解压缩)

但是,如果这是全新安装而不是升级现有的,那么您可能无法摆脱使用 Xcode,因为您几乎肯定需要 一些 编译器或组件几个包。现有安装应移动路径或删除并重建(使用brew leaves && brew list -1 --cask 收集所有***包)

brew install git

如果出现此警告,您可能还需要/想要提供解决方案

hint: Pulling without specifying how to reconcile divergent branches is
hint: discouraged. You can squelch this message by running one of the following
hint: commands sometime before your next pull:
hint:
hint:   git config pull.rebase false  # merge (the default strategy)
hint:   git config pull.rebase true   # rebase
hint:   git config pull.ff only>    # fast-forward only
hint:
hint: You can replace "git config" with "git config --global" to set a default
hint: preference for all repositories. You can also pass --rebase, --no-rebase,
hint: or --ff-only on the command line to override the configured default per
hint: invocation.

pull.ff only 是一个合理的选择,因为它只会在您尝试拉取(修改本地和远程)时发生本地冲突时才会执行快进

git config --global pull.ff only

【讨论】:

【参考方案5】:

我遇到了这个问题。将我的 mac 更新到 Big Sur 11.3 修复了它。

【讨论】:

以上是关于无法在 Mac OS Big Sur 上运行 git的主要内容,如果未能解决你的问题,请参考以下文章

我的鱼瞎了? (在 Mac OS Big Sur、M1 Mac 上将其设置为默认 shell 后,fish 无法识别任何命令)

Mac OS X Big Sur 上 webstart 的 JDialog 全屏问题

Cocoapods 无法在新的 m1 mac Big Sur Xcode 上运行

在 Mac OS Big Sur 11.0.1 上使用 anaconda 安装 Torch 时出现 PackagesNotFoundError

VMware16 如何安装 Mac OS Big Sur 11.0.1虚拟机

如何在 Mac OS Big Sur 中更改 xampp htdocs 目录