【问题标题】:Xcode: issue "file xxx.png is missing from working copy" at project buildingXcode:项目构建中的问题“工作副本中缺少文件 xxx.png”
【发布时间】:2014-10-09 21:33:11
【问题描述】:

在项目中删除/添加一些 png 文件后,我在构建项目时收到消息。

“工作副本中缺少文件 ProjectPath\aaa\xxx.png。”

所有这些文件都在项目中,并且应用程序正在运行。但是,这些消息很烦人。看了.plist 文件,但没有提到这些文件。 我应该怎么做才能删除这些消息?

【问题讨论】:

标签: ios xcode file


【解决方案1】:

在目标上显示->构建阶段->复制捆绑资源。 和 清理构建文件夹 command+shift+alt+k

【讨论】:

  • 谢谢,但它们不在构建阶段,清理构建文件夹也无济于事。
【解决方案2】:

在我的例子中,Xcode 以某种方式找到了引用丢失文件的旧 .svn 目录。为了找到那些 .svn 文件,我必须在我的项目文件夹上方上一层。删除后,我重新启动 Xcode,一切都很好。

【讨论】:

  • 是的,当你从版本控制下的项目中删除某些东西时,它仍然被版本控制(在我的例子中,svn)引用。使用“svn update”恢复丢失的文件,然后使用“svn delete”以正确的方式删除它们,让我的问题消失了。
【解决方案3】:

我解决了。

只要打开你的第三方SVN工具,找到丢失的文件,Revert; 就是这样。

【讨论】:

    【解决方案4】:

    在 XCode -> SoureControl:

    Update + Refresh Status 为我做了。

    【讨论】:

    • 我认为这可能是由于文件名中包含“@”的图像,例如“@2x”和“@3x”约定。 SVN 将该符号用于修订语法(为了在命令行中使用 SVN 时对其进行转义,您只需在末尾添加一个“@”,因为最后一次出现是它用来尝试确定修订信息的那个)。简单地运行更新对我有用。当我添加一些新图像时,实际上我还必须在“文件检查器”窗格中手动选择 2x/3x 变体上的“添加”。很奇怪。
    • 这个!很重要。如果您重命名包含文件的文件夹,也会出现问题。换句话说,xcode 给了我们警告,因为我们还没有提交我们的代码! 拍拍拍拍
    • 这对我有用。我不得不关闭 Xcode 并再次打开项目并运行。
    【解决方案5】:

    当您在 Xcode 上删除文件时发生这种情况,但没有告诉 svn 服务器。

    进入命令行工具,直接删除文件。

    svn delete missingFile.m 
    

    并提交它

    svn commit -m "Deleting file"
    

    请注意,如果您删除 .svn 文件夹,警告会消失,但您将失去与 svn 服务器的通信。

    【讨论】:

      【解决方案6】:

      这个问题似乎有不同的原因,但通常与源代码管理软件有关。

      就我而言,我通过转到 Git 并再次添加文件来解决它。我的意思是运行以下命令:

      git add .
      

      【讨论】:

      • 安装 Xcode 8 并将代码升级到 swift 3 后,我遇到了 300 多个需要语法更正的问题(大型项目)。相反,我从备份中恢复并升级到 swift 2.3……除了一堆“丢失”的消息外,一切都很顺利。这个命令就像一个魅力 - 我回来了!
      • 这对我有用。当我删除了 Pods 中的内容以支持 Carthage 时,问题就开始了
      • 这也适用于我。似乎该文件处于源代码控制之下,并且 git 也需要更新。
      • git commit 后警告消失
      • 对于其他人:您必须位于 Xcode 项目的根文件夹中并执行“git add”。命令:/MyXcodeProjects/AwesomeApp/
      【解决方案7】:

      一旦您提交更改 (Xcode 8),警告就会消失。

      【讨论】:

      • 发现在将一些文件移动到不同的目录后,我只需要在 git 下提交我的更改。
      • @LearnSwift Clean Cmd+Shift+K,删除~/Library/Developer/Xcode/DerivedData/*?
      • @AlexanderVasenin 也没有
      • 对我来说,简单地进行更改就足够了。很高兴知道。
      • 正如您所提到的,我确实确保提交并推送我的最新更改。但这样做并没有消除错误。然后我做了 Xcode > Source Control > Discard ALL Changes,它为我清除了所有错误。
      【解决方案8】:

      我必须手动进入终端并使用git rm ProjectPath\aaa\xxx.png 删除文件,然后提交。之后一切正常。

      【讨论】:

        【解决方案9】:

        对我来说,以下工作:

        由于我没有也从未使用过 Git,因此我创建了一个新项目(XCode 8,我看不到通常的“使用 Git”,或者标记了复选标记)。然后我直言删除了这个新项目中的所有文件;转到旧的混乱项目,复制项目文件夹中的所有内容,回到新创建的项目,粘贴旧的东西,打开它 - 所有关于几个月不存在的文件的警告都消失了。手指交叉。

        【讨论】:

          【解决方案10】:

          当我仍在使用 Xcode 7 时,我的 Xcode 项目中早已删除了一些文件,我遇到了类似的问题。

          我的解决方案是:

          1. 使用 Xcode 抱怨的名称创建文件(它们不需要任何内容​​)
          2. 将文件添加到我的 Xcode 项目中(在 Xcode 中右键单击我的主项目目录,单击将文件添加到 my_project_name 并选择刚刚创建的文件
          3. 选择新添加的文件并删除它们 - 选择移至回收站。

          这消除了我的警告。

          【讨论】:

          • 这对我也有用。我在复制现有项目以制作衍生产品后遇到了问题,但功能减少了 ⇒ 源文件更少。
          【解决方案11】:

          就我而言,我在模拟器中的旧项目中有错误的数据。通过在模拟器中重置内容和设置解决:

          模拟器 -> 重置内容和设置...

          【讨论】:

            【解决方案12】:

            您也可以通过取消选中来禁用源代码管理

            Xcode -> 首选项 -> 源代码控制 -> 启用源代码控制

            如果您通过命令行或任何其他应用程序管理它。

            【讨论】:

            • 这是为我做的,在 IDE 中看到这个有点烦人,他们应该很好地支持源代码控制或者根本不支持
            • 我做了两个动作:1)“取消选中”,2)“检查”启用源代码控制。警告消失了。
            【解决方案13】:

            就我而言,源代码管理中缺少该文件。
            为了修复,我不得不丢弃这个文件(小心只丢弃丢失的文件而不是你的所有项目):

            1. Xcode->源代码管理->提交
            2. 右键单击丢失的文件
            3. 选择放弃更改

            【讨论】:

            • 它对我有用,我确实删除了 DerivedData 文件夹,警告是针对文件为“db.xcindexdb”
            • 首先,我确保提交并推送我的最新更改。然后我做了 Xcode > Source Control > Discard All Changes,它为我清除了所有错误。
            【解决方案14】:

            在迁移到 XCode 8 后,每个项目都得到了这个。这解决了它:

            按下选项键,产品(在标题菜单中)-> 清理构建文件夹。

            【讨论】:

              【解决方案15】:

              我遇到了同样的问题,只需将指定的文件从 finder 拖到项目导航器中(确保在对话框中选择了“复制文件”)并提交文件即可解决。

              【讨论】:

                【解决方案16】:

                这些警告不是构建警告,它们与您的 SVN 存储库有关。

                显示的目录已不存在是正确的,CocoaPods 现在将标头存储在Pods/Headers/{Private,Public} 中。您必须更新您的工作副本以反映这些更改。

                【讨论】:

                • 我没有在 XCode 中使用版本控制,但还是遇到了问题。
                【解决方案17】:

                在我的例子中,我在我的 Xcode 项目窗口中拖放了一些文件来添加它们。它复制了我的源目录,但没有把它们放在我想要它们去的地方(它把它们放在我目录的根目录,我希望它们放在一个子目录中)。没想到我只是在 Finder 中抓取它们并将它们移动到我想要它们的目录。回到项目窗口后,它当然找不到它们,所以我在窗口中删除它们并重新添加它们。编译后我开始收到这些错误。

                我认为,正如上面提到的,这是一个 git 问题,但是当我运行“git ls-tree --full-tree -r HEAD”时,我根本没有看到这些文件??

                无论如何要修复它,我所做的就是使用“添加文件...”菜单命令将每个文件添加到默认位置,进行干净的构建,然后从项目窗口中删除它们(使用移动到垃圾),它摆脱了所有的错误。

                【讨论】:

                  【解决方案18】:

                  在我的情况下,这是 git 和不区分大小写的文件系统的问题。

                  我无意中两次提交了同一个文件,使用的文件路径仅在大小写不同:

                  MyProject/Resources/foo.png
                  MyProject/resources/foo.png
                  

                  Xcode 抱怨其中一个文件丢失。

                  通过删除有问题的文件并重新添加来修复。

                  cd MyProject
                  mv Resources/foo.png /tmp
                  git rm Resources/foo.png
                  git rm resources/foo.png
                  git commit
                  mv /tmp/foo.png Resources
                  git add Resources/foo.png
                  git commit
                  

                  【讨论】:

                    【解决方案19】:

                    我收到了警告,也无法在 XCode 下提交更改(使用 svn)。我所要做的就是重新启动 XCode,问题就消失了。

                    【讨论】:

                      【解决方案20】:

                      禁用源代码管理,清理构建文件夹 (Alt+Shift+Cmd+K),然后再次启用源代码管理。

                      Xcode -> 首选项 -> 源代码控制 -> 启用源代码控制

                      【讨论】:

                      • 正确答案...但是@emrekyv 3 个月前发布的确切答案...他获得了投票
                      • @eric 他建议禁用源代码控制,我展示了如何使其正常工作。
                      【解决方案21】:

                      我有同样的问题并通过添加 git 解决了它。 打开命令行工具

                      cd "project folder path"
                      git add .
                      

                      稍后,重新启动 Xcode 项目并再次打开您的项目。

                      【讨论】:

                      • 不使用git怎么办?
                      【解决方案22】:

                      这肯定与源代码控制有关。我重命名并移动了几个未提交的 plist 文件并收到此错误。我正在使用svn。我可以通过 Source Control - Commit 删除旧的引用文件来解决此问题。

                      【讨论】:

                      • 我遇到了问题,我没有使用 XCode 知道的版本控制。所有版本控制都在 XCode 之外完成。
                      【解决方案23】:

                      这对我有用: Xcode -> ("option + click") Product -> Clean Build Folder...
                      比重启xCode

                      【讨论】:

                        【解决方案24】:

                        添加到 Alexander Vasenin 的答案...

                        首先我提交并推送我的更改

                        Xcode 主菜单 > 源代码管理 > 提交

                        然后我放弃了所有更改以消除错误

                        Xcode 主菜单 > 源代码管理 > 放弃所有更改

                        之后,“工作副本中缺少文件 xxx.png”的错误消失了。

                        【讨论】:

                        • 项目不使用版本控制或者XCode不支持的版本控制系统怎么办。
                        猜你喜欢
                        • 1970-01-01
                        • 2015-07-13
                        • 2016-10-24
                        • 1970-01-01
                        • 1970-01-01
                        • 2021-03-02
                        • 2010-09-09
                        • 1970-01-01
                        • 1970-01-01
                        相关资源
                        最近更新 更多