Xcode 8 – 缺less文件警告

自从使用Swift 2.3升级到Xcode 8以来,我有几个缺less的文件警告。 他们都与我正在使用的豆荚有关。

缺less的文件是

*.xcscheme *.cpp *.xcuserstate *.swift 

显示丢失文件的豆荚是

  • 领域(〜43)
  • TextFieldEffects(〜3 of 43)
  • BEMCheckBox(2 of 43)

我该如何解决这个问题?

这只是一个Xcode错误。 如果你删除或重命名一个文件,而没有提交,Xcode会看到之前的git commit和当前状态之间的差异,并报告这些警告。 一旦你做了一个包括文件删除/重命名的git add ,它们就会消失。

如果您不使用xcode源代码pipe理,但是使用其他一些git客户端(如源代码树或terminal),则可以禁用Xcode中的源代码pipe理,而不是警告消失。

Xcode>首选项>源代码pipe理,取消选中“ 启用源代码pipe理

我尝试了所有这些(和许多其他),但没有一个工作。 经过几个小时的尝试各种修复程序,我发现以下程序工作。

 cd "project directory" git add . 

您将需要closuresXCode并重新打开,否则未来的提交可能会失败。

希望这有助于某人。

我简单地解决了这个问题:

  1. 将该罪魁祸首添加到该项目中 在这里输入图像说明

  2. 删除参考 在这里输入图像说明

这将清除XCode的内部状态,并且消息消失。

如何在Source Control commit

您可能首先必须显示"your project name".xcodeproj数据包内容并显示project.xcworkspace数据包内容,然后删除xcuserdata文件夹。

如果您仍然无法提交,因为无法与助手应用程序问题进行通信在您的项目目录下尝试以下操作:

 xcrun git config user.name "Your Name" xcrun git config user.email YourEmailAddress 

*记得重新打开这个项目来看看效果。

您可以通过在X-Code-> Preferences-> Source Control中选中“自动添加和删除文件”选项来解决该问题

这是首选项的屏幕截图

Xcode 8似乎经常错过git add删除/相关的文件。 要纠正它,点击从Xcode的Source Control菜单中的Commit... ,确保检查这些文件(后面跟着一个感叹号!),然后提交更改。 这应该清除警告。

我已经有几次这个问题,最后我做了丑陋的变通办法之后! 我坐下来跟踪它,直到find它的原因,并且存储了引用。

正如有人已经提出,它必须与版本控制,是和不是,在某些情况下,它绝对必须直接使用查找器或任何(但不是从XCode)

这是一个快速修复,节省了很多麻烦和发誓的话!

删除此文件:./.xcworkspace/xcuserdata/.xcuserdatad/UserInterfaceState.xcuserstate

错误消失了!

我有同样的问题。 在我的情况下,我的项目的父目录中有一个.git目录。 通过删除那个父母的.git目录,那里的错误消失了。

在我的情况下,在检查到存储库生成几百个“丢失的文件”警告的情况下。 通过从回购中删除Pod来修复它:

 git filter-branch --index-filter 'git rm --cached --ignore-unmatch Pods/*' --tag-name-filter cat -- --all 

我已经通过以下步骤解决了这个问题:

  1. 清除派生数据

  2. 丢弃提交时丢失的文件,然后提交。

  3. 清洁生成

  4. 解决..

快乐编码.. 🙂

在项目中添加自定义CollectionView单元格(CustomCollectionViewCell)后,我遇到了同样的问题。 不需要删除文件,而是我们可以。

重命名缺less的文件是“xCustomCollectionViewCell.xib”。

现在错误消失了。

再次将相同的文件重命名为原始名称“CustomCollectionViewCell.xib”

这对我来说是固定的:

 git reset HEAD <path-to-deleted-file-that-was-causing-the-Xcode-warning>