近一年来,我一直在使用 Xcode 开发和发布应用程序。我一直使用 git 作为本地存储库和 bitbucket 作为远程存储库。直到今天早上,一切都很顺利。我现在收到一个错误“工作副本“xxx”未能提交文件。请告诉我你是谁。Xcode 然后建议我运行 git config 并给它一个电子邮件地址和名称。我不知道为什么它突然需要知道我是谁。我不知道它以前以为我是谁,我不希望它变得比现在更混乱。我没有在 Mac 上使用命令提示符做任何事情,所以我不确定它希望我在哪里输入这些信息。我隐约记得一年前看到有关使用命令提示符设置 bitbucket 的建议,但它们看起来令人困惑,所以我从 xcode GUI 完成了所有操作。这是 xcode 4.6 中的新功能吗?我该怎么办?
5 回答
我也得到了这个。起初我可以重新启动mac,一切正常。最终,尽管即使重新启动,问题还是会卷土重来,但它不会让我提交,所以我不得不爱上命令行。一个警告是,当使用与 Xcode 一起安装的 vanilla git 时,您必须在终端中的任何 git 命令之前键入 xcrun。
所以输入:
xcrun git config --global user.email your@email.com
xcrun git config --global user.name "your name"
这样做之后,一切都很好,花花公子。
安装 Xcode 7 后我遇到了同样的问题。Kent Latimer 提供的解决方案对我有用。从终端在工作区目录中配置不带 --global 的配置。
xcrun git config user.name "Toto"
xcrun git config user.email toto.toto@mail.com
提交的文件可能会导致错误:
工作副本 '' 未能提交文件。无法与帮助应用程序通信
对于那些使用 Xcode 进行源代码控制,并且尝试过但没有成功的人:
xcrun git config --global user.name "Toto"和
xcrun git config --global user.email toto.toto@mail.com
检查正在提交的文件是否导致此问题。
以下是解决此错误的方法: 提交时,一次取消选中一个文件并尝试提交。如果这不起作用,请取消选中多个文件,只选中几个或一个。
预期结果: 最终,您应该找出阻止与 git 通信的文件。提交所有其他文件后,忽略所有更改。在此之后一切都应该正常工作。
文件如何更改而不被跟踪? 未经源代码管理跟踪而更改的文件将导致此问题。如果您可能不得不将 MacBook 切换到备用设备,这样您就可以将主 MacBook 送去维修,这可能会发生。在大多数情况下,使用 Dropbox 同步您的文件是可行的,但原始 Xcode 可能会进行细微的更改,而该更改在项目迁移到的 MacBook 中未跟踪到。
如果上述解决方案都不起作用,我想提一下,在我的情况下,我在将一些库拖到我的 svn 项目中时遇到了这个错误,这些库来自 github 并且在某种 GIT 控制下。
另一种选择:假设您实际上已将 git 配置为与 xcode 一起使用并假设它只是在运行 xcode,您可以在项目打开时在 xcode 中尝试此方法:
源代码管理 -> 配置 -> 点击“确定”
这似乎刷新了您最初设置的配置。