【问题标题】:Git is not working after macOS Update (xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools)macOS 更新后 Git 无法工作(xcrun: 错误:无效的活动开发者路径 (/Library/Developer/CommandLineTools)
【发布时间】:2021-11-02 01:16:22
【问题描述】:

我更新到了 macOS Mojave(这也发生在 Catalina 更新中,并且似乎可能发生在之后的每次重大更新中)

今天早上,我在 MacBook Pro 的命令行中导航到我工作的代码库,在存储库中输入“git status”并收到错误:

xcrun:错误:无效的活动开发者路径 (/Library/Developer/CommandLineTools),缺少 xcrun:/Library/Developer/CommandLineTools/usr/bin/xcrun

如何修复 git 和命令行工具?

【问题讨论】:

  • 说实话,这个问题是 APPLE 应该解决的。他们创造了它,他们应该修复它!!!!!!每次发生这种情况时要求每个人都运行该命令不是一个好的/正确的选项。更不用说你只需要为 git 下载那个大块。
  • 我在更新 Big Sur 时没有遇到它。我最初写这个问答的那一年才遇到这个问题。我每年都在更新它以包含最新的变化。
  • 我们应该得到苹果公司的报酬来调试他们的代码!
  • 我更新到蒙特雷并面临同样的问题。 Apple 确实需要研究这个问题。

标签: xcode git macos command-line terminal


【解决方案1】:

问题是 Xcode 命令行工具需要更新。

解决方案 #1

回到你的终端并输入:

xcode-select --install

然后您将收到以下输出:

xcode-select: note: install requested for command line developer tools

然后会在一个窗口中提示您更新 Xcode 命令行工具。 (可能需要一段时间)

打开一个新的终端窗口,您的开发工具应该会返回。

补充:对于任何主要或半主要更新,您都需要更新命令行工具以使其再次正常运行。检查 Xcode 是否有任何更新。这超越了莫哈韦沙漠......

然后重启你的终端

或者,如果失败,很可能......你会看到一个弹出框,上面写着“服务器上找不到软件”,见下文!

解决方案 #2

你点击xcode-select --install,没有找到软件,登录Apple Developer,通过网页安装。

在此处登录或注册:

https://developer.apple.com/download/more/

在下载列表中查找:“Xcode 12.x 命令行工具” 然后点击dmg并下载。

【讨论】:

  • 这解决了我在使用 Microsoft Visual Studio Code 时遇到的问题,当我在升级到 Mojave 后首次启动它时抱怨没有安装 Git。我认为问题出在 VS Code 上,但这是这个 SO question 中的问题。安装 Xcode 命令行工具后重启 VS Code 解决了这个问题。
  • 我希望 Xcode 更新是操作系统更新的一部分。每次升级时都会发生这样的事情。烦人。
  • 不过确实很烦人。对 Xcode 安装进行简单检查,然后在操作系统更新期间进行更新将非常容易添加。这些来自 Apple 的操作系统更新总是有问题的。你会认为他们现在已经想通了。
  • 对于在 PHPStorm 中使用 Git 的任何人;运行xcode-select --install 后需要重启 PHPStorm。然后就可以了。
  • 这个解决方案也适用于我的 Mac Catalina 更新。太棒了!!!
【解决方案2】:
  1. 运行此命令:

xcode-select --install

  1. 点击返回以获取命令行工具下载的进度指示器。

  2. 命令行工具安装完成后,您的 Mac 应该会重新启动。如果您在终端中工作时收到“xcrun error invalid active developer path”,请刷新应用程序或重新启动它。

即使按照上述步骤操作,如果您看到错误:无效的活动开发者路径 (/Library/Developer/CommandLineTools)。下一步是尝试使用可直接从 Apple 网站下载的 DMG 文件安装命令行工具。

同样,如果您使用的是 Homebrew,则需要对其进行更新。您无需卸载并再次install Homebrew on Mac

注意:如果您使用 Homebrew,请在重新安装命令行工具后尝试更新它。

致谢:Git not working after macOS Update

【讨论】:

    【解决方案3】:

    我昨天更新了我的macOS,从macOS Mojave(10.14.6)到macOS Catalina(10.15.7),我在我的项目中执行“git”命令。我得到同样的错误。

    运行:

    xcode-select --install
    

    【讨论】:

    • 请不要重复已有的答案
    【解决方案4】:

    边缘案例,但仍值得记录:使用迁移助手从旧版 Mac 迁移时,您可能选择了从旧版 Mac 迁移所有应用程序的选项。如果 Xcode 等应用程序已从您其他用户的应用程序文件夹中传输并保留或删除,则需要对其进行更新。这是因为第一次启动新的操作系统版本后,Xcode 没有正确设置。

    【讨论】:

      【解决方案5】:

      如果您使用xcode,请安装它 (~12GB)

      xcode-select --install
      

      否则安装最新的command line tools (~500MB)

      【讨论】:

      • 在过去的 2 年里,我已经(重新)安装了很多次 xcode,以至于就像“我要教你多少次这节课,老人?”
      【解决方案6】:

      以下在 M1 上工作

      ProductName:    macOS
      ProductVersion: 11.2.1
      BuildVersion:   20D74
      
      % xcode-select --install
      

      同意条款和条件提示,成功后将返回以下消息。

      % xcode-select: note: install requested for command line developer tools
      

      【讨论】:

        【解决方案7】:

        从 Mojave 更新到 Big Sur 并得到同样的错误: 命令

        xcode-select --install
        

        像魅力一样工作

        【讨论】:

          【解决方案8】:

          Mac 操作系统:大苏尔

          第一优先

          sudo xcode-select --reset
          
          sudo xcodebuild -license
          

          第二优先

          xcode-select --install
          

          【讨论】:

          • Big Sur 的最佳答案
          • 对于大苏尔来说,这个首要任务很有用。感谢您节省大量时间和数据。
          • 我正在使用 Big Sur (xcode-select --install) 帮助了我。
          • 在 catalina 上为我工作
          • 最佳答案!此问题不需要再次安装工具
          【解决方案9】:

          如果您在外部驱动器中创建了一个新的 Applications 文件夹并在那里安装了 Xcode:

          sudo xcode-select --switch /Volumes/MyExternalStorageName/Applications/Xcode.app/Contents/Developer
          

          【讨论】:

            【解决方案10】:

            我有同样的问题,更新后无法使用SVN

            以防万一执行 xcode-select --install 没有解决问题,

            你可能会看到,

            svn: 错误:Xcode 不再提供 subversion 命令行工具。

            参考:https://developer.apple.com/documentation/macos_release_notes/macos_catalina_10_15_release_notes

            尝试通过brew

            安装svn
            brew install svn
            

            这应该能让你继续前进。

            【讨论】:

              【解决方案11】:

              升级到 Mac Catalina 后,我遇到了同样的问题,我不得不运行几个命令来解决这个问题。

              开始于:

              xcode-select --install

              它没有解决问题,必须在sudo 中运行以下命令

              sudo xcode-select --reset

              然后,在我切换并为活动开发者目录明确设置路径后终于得到修复:

              sudo xcode-select -s /Library/Developer/CommandLineTools

              注意:如果你安装了Xcode,在这种情况下你可能需要指定Xcode目录,它应该是这样的

              xcode-select -s /Applications/Xcode.app

              【讨论】:

              • 如果您安装了 Xcode,您不需要安装单独的命令行工具。只要确保您运行xcode-select --switch /Applications/Xcode.app/Contents/Developerxcode-select --reset,终端将使用Xcode 中的命令行工具,而不是由“命令行工具”独立安装程序安装的那些。从那时起,App Store 将自动更新 Xcode,您的工具将保持最新状态。
              • Xcode select 做到了,因为我只安装了测试版!
              • 先尝试sudo xcode-select --reset,然后再尝试--install
              【解决方案12】:

              我在 Catalina 隐私设置中观察到,如果 Xcode 未添加到完全访问磁盘中,我将得到相同的错误,Xcode 不运行脚本。添加您的 Xcode,与所附图像中的相同。在干净的构建和运行之后。希望它会起作用。

              【讨论】:

                【解决方案13】:

                我发现我的 Xcode 版本太旧了,安装命令行工具没有帮助。这是我所做的:

                • 我完全卸载了过时的 XCode
                • 我从应用商店重新安装了最新的 XCode
                • 仅此而已。 Git 已恢复。

                【讨论】:

                  【解决方案14】:

                  在我的情况下,它没有在 xcode 中检查 安装完成后,

                  你可以这样做: xcode -> Preferences 并点击 Locations 然后选择 ,如下图

                  【讨论】:

                  • 这修复了几个项目,但不是全部
                  • 我有 Xcode 10.3、11.1 和 11.2,而 Xcode 无法确定要用于命令行工具的版本,并将下拉列表留空。一旦为我的目的选择了 11.1,git 命令就开始工作了。
                  • 这个弹出窗口相当于调用xcode-select --switch,顺便说一下你在此处选择的任何版本的Xcode包的路径。
                  • 好的提示谢谢,无论如何,重要的是解决问题
                  • 这对我有用.. 非常感谢。我在不同的地方有新旧版本的 Xcode。
                  【解决方案15】:

                  如果您手动下载了 Xcode(即不是从 App Store 下载)或根本没有 Xcode:

                  1. sudo rm -rf /Library/Developer/CommandLineTools
                  2. 转到https://developer.apple.com/download/more/ 下载适用于 Xcode 10 的命令行工具 (macOS 10.14)
                  3. 设置命令行工具

                  如果您从 App Store 安装了 Xcode:

                  1. xcode-select --install

                  【讨论】:

                  • 我只想安装命令行工具而不是 Xcode。这个解决方案似乎是最好的。最小安装
                  • 非常适合我,因为我不需要 Xcode 但我确实需要 Git :)
                  • 在我安装了 Catalina 并尝试了xcode-select --install 答案后,我在 UI 安装程序中遇到了一个错误:“xcode-select: note: install requested for command line developer tools”。这是唯一对我有用的东西,因为我不想安装 Xcode。 (我使用 XCode 12 的命令行工具。)
                  【解决方案16】:

                  我在以前的主要版本中使用了接受的答案中给出的xcode-select --install

                  我刚刚升级到 OS X 10.15 Catalina,并在操作系统升级完成后再次从首选项运行软件更新工具。 Xcode 实用程序更新在那里可用,它还使用刚刚输出的 git 对问题进行了排序 xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools)

                  【讨论】:

                  • 如果您安装了 Xcode,您不需要安装单独的命令行工具。只要确保您运行xcode-select --switch /Applications/Xcode.app/Contents/Developerxcode-select --reset,终端将使用Xcode 中的命令行工具,而不是由“命令行工具”独立安装程序安装的工具。从那时起,App Store 将自动更新 Xcode,您的工具将保持最新状态。
                  【解决方案17】:

                  打开终端:

                  安装 XCode 开发者工具并修复问题。

                  $ xcode-select --install
                  

                  如果您有多个版本,请重置 Xcode 的路径:

                  $ xcode-select --switch /Applications/Xcode.app
                  $ xcode-select --switch /Library/Developer/CommandLineTools
                  

                  【讨论】:

                  • 如果您安装了 Xcode,您不需要安装单独的命令行工具。只要确保您运行xcode-select --switch /Applications/Xcode.app/Contents/Developerxcode-select --reset,终端将使用Xcode 中的命令行工具,而不是由“命令行工具”独立安装程序安装的工具。从那时起,App Store 将自动更新 Xcode,您的工具将保持最新状态。
                  • 另外,对上面的xcode-select --switch 进行两次调用是没有意义的。第二个覆盖第一个所做的。执行第一个,您的命令行工具将作为 Xcode 的一部分进行更新。
                  【解决方案18】:

                  对我来说它发生在 Mac OS 更新到 Mojave 并且 git 在 Intellij 中不起作用

                  解决方案:- 转到设置,然后文件 |设置 |版本控制 | Git 并编辑 Git 可执行字段的路径,即 /usr/local/bin/git

                  【讨论】:

                    【解决方案19】:

                    对于那些使用 Catalina 和 Xcode-beta 的用户:

                    sudo xcode-select -s /Applications/Xcode-beta.app/Contents/Developer
                    

                    【讨论】:

                      【解决方案20】:

                      这对我有用

                      sudo xcode-select --reset 
                      sudo xcodebuild -license
                      

                      必须安装 X-code。

                      【讨论】:

                        【解决方案21】:

                        对我来说有效的方法如下:

                        sudo xcode-select --reset
                        

                        然后就像@High6 的回答:

                        sudo xcodebuild -license
                        

                        这将显示一个我认为是一些 Xcode 许可证的许可证。使用 space(或鼠标)滚动到底部,然后点击 agree

                        这在 MacOS Mojave v 10.14 上对我有用。

                        【讨论】:

                        • 您的解决方案适用于 MacOS 10.13 High Sierra。谢谢。
                        • 如果您安装了 Xcode,这是正确的解决方案。终端将使用 Xcode 中的命令行工具,而不是由“命令行工具”独立安装程序安装的工具。从那时起,App Store 将自动更新 Xcode,您的工具将保持最新状态。
                        • 这适用于 BigSur 以及 Monterey beta 分支。比每次更新时下载和安装巨大的新 Xcode 版本要容易得多。
                        • 这对我有用,并修复了在我通过迁移助手从运行 Catalina 的旧 iMac 迁移到运行 Monterey 的闪亮新 Apple Silicon MacBook Pro 后 VSCode 找不到 Git。
                        【解决方案22】:

                        我从错误消息中找出了 Xcode 命令行工具部分,但在运行 Xcode 并收到安装附加工具的提示后,它确实声称要安装它们,但在打开新终端后我仍然遇到同样的错误。

                        所以我手动完成了xcode-select --install,之后它对我有用。

                        【讨论】:

                        • 如果您安装了 Xcode,您不需要安装单独的命令行工具。只要确保您运行xcode-select --switch /Applications/Xcode.app/Contents/Developerxcode-select --reset,终端将使用Xcode 中的命令行工具,而不是由“命令行工具”独立安装程序安装的工具。从那时起,App Store 将自动更新 Xcode,您的工具将保持最新状态。
                        【解决方案23】:

                        对我来说,我没有安装 xcode(在 Mojave 操作系统上)。我在我的 Mac 上去 App Store 并下载了它,然后回到终端并输入 git 并回车,然后它就可以工作了。

                        【讨论】:

                          【解决方案24】:

                          对我来说,xcode-select --reset 是 Mojave 的解决方案。

                          【讨论】:

                          • 不知何故,“xcode-select --install”结束了服务器上不可用的软件。但这一个有效
                          • 这对我有用,我在安装新的 Xcode 后运行了这个命令。
                          • 我刚刚从 Mac OS X 10.14 (Mojave) 升级到 MacOS 10.15 (Catalina) 并遇到了这个问题,这个解决方案运行良好,没有必要运行 xcode-select --install
                          • 在 Catalina 上也适用于我,但需要添加 sudo
                          • sudo xcode-select --reset 在 Mojave 上为我工作 --> MacOS 的 Catalina 升级
                          【解决方案25】:

                          我在尝试时收到一些错误,即更新服务器上的软件不可用

                          xcode-select --install

                          为我解决的问题是去这里 https://developer.apple.com/download/more/ 并下载 Command Line Tools (macOS 10.14) for Xcode 10 然后手动安装。

                          之后,当您打开一个新终端时,错误应该消失了。

                          【讨论】:

                          • 这应该是正确的答案,在 3 台机器上尝试过,@dustbuster 答案不再起作用,并显示“尝试时软件无法从更新服务器获得”
                          • 对我来说,这以software not available at server 结尾,但@High6 下面的答案有效。 xcode-select --reset
                          • 从链接下载Command Line Tools (macOS 10.14) for Xcode 10.1。谢谢!
                          • 安装了 xcode 仍然存在问题。这就像一个魅力......应该是选定的答案。或者应该是最佳答案的附录。
                          • 这也适用于 macOS 10.15.2。虽然我不得不选择Command Line Tools for Xcode 11.3,因为 Xcode 10.1 不可用
                          【解决方案26】:

                          除了dustbuster的回答之外,我还需要使用以下命令设置Xcode文件夹的路径:

                          sudo xcode-select -switch /Library/Developer/CommandLineTools
                          

                          【讨论】:

                          • 对我来说也是一样,@dustbuster 可能是合并这些答案的好主意。
                          • 好的,这个为我解决了这个问题。尝试xcode-select --install 并手动下载和安装,没有一个解决方案有效。请注意,我等待并升级到版本 10.14.1。
                          • 如果您安装了 Xcode,您不需要安装单独的命令行工具。只要确保您运行xcode-select --switch /Applications/Xcode.app/Contents/Developerxcode-select --reset,终端将使用Xcode 中的命令行工具,而不是由“命令行工具”独立安装程序安装的工具。从那时起,App Store 将自动更新 Xcode,您的工具将保持最新状态。
                          • 看了这么多答案,这是Mojave更新后对我有用的答案,谢谢!
                          猜你喜欢
                          • 2021-10-27
                          • 2020-03-03
                          • 2020-02-05
                          • 1970-01-01
                          • 1970-01-01
                          相关资源
                          最近更新 更多