DVTSourceControlGitXPCClient 在 Xcode 14 上崩溃

vau*_*all 10 git macos xcode ios swift

从几天前开始,我就遇到了Xcode每隔 3-8 分钟就会重复崩溃一次的情况。

我在崩溃日志中能找到的唯一有形的东西是它总是显示:

崩溃线程:调度队列:DVTSourceControlGitXPCClient ::代理完成队列

这似乎与源代码管理相关,但我想知道如何?

我将添加与我当前项目相关的所有内容,以防相关:

  • Xcode 14.2 (14C18)
  • 将源代码管理与 GitHub 结合使用
  • Swift 针对 iOS 和 macOS
  • SPM

正如开发者论坛上所见,似乎有些人遇到了类似的问题

关于原因或如何解决的任何线索?

vau*_*all 10

经过一番挣扎后,我决定直接从终端检查git 的表现如何。

事实证明,有些事情没有意义,特别是我从项目中删除但随后再次添加的文件显示为modified,即使我几天前已经提交了该文件的所有更改;但我是直接从Xcode Source Control完成的。

我从终端上演了所有更改并提交了它们。从那时起,Xcode 几个小时都没有崩溃过。

我对这个问题的有限理解指出,Xcode 在暂存我几天前所做的这些更改时遇到了问题,从那时起,存储库就不再处于“健康状态”;Xcode 尝试以某种方式了解存储库的状态,但过了一会儿,它就崩溃了。

可能发生这种情况的常见场景:

  • 文件被删除
  • 文件被重命名,特别是区分大小写的重命名,例如从MyViewcontroller.swiftMyViewController.swift

对我来说,解决方案是将其恢复到“健康状态”,也就是直接从 Terminal 进行提交

例子

从航站楼

# navigate to the directory of your repository
$ cd /someFolder/myProjectApp

$ git status
# check that you get "nothing to commit"
# or if there are changes they should make sense

# if some changes do not make sense
# try staging and committing everything
# example:
$ git add .
$ git commit -m "Cleaning state"
Run Code Online (Sandbox Code Playgroud)