Xcode引用文件的旧副本

时间:2015-06-15 16:47:03

标签: ios objective-c xcode file-management

Xcode忽略了我对某些文件中的代码所做的更改。我已经追溯到这样一个事实:Xcode以某种方式保留了自己的旧版本的代码文件...这些旧的/重复的文件没有显示在项目文件夹的Finder窗口的任何地方,并且在用两者清理项目后仍然存在“清理“和”清理构建文件夹“,关闭Xcode,然后重新启动计算机。

让我试着解释一下:

我有一个名为QuestionPicker.h的文件和一个相应的QuestionPicker.m

当我对其中任何一个代码进行更改时,Xcode无视任何更改,并继续在这些文件中使用旧版本的代码。

当我“按住Alt键点击”查看声明时:

enter image description here

然后单击显示的QuestionPicker.h,在我对其进行更改之前,它会将我带到“不存在”的旧版本文件。当我查看标题栏时,此文件不会显示为我项目的一部分,但更像是一个孤立的文件:

enter image description here

如果我从Project Navigator中单击真正的QuestionPicker.h,它会显示我对代码的最新更改,标题栏会将该文件显示为项目整体代码库的一部分:

enter image description here

我可以有趣地做的一件事是选择并复制我的QuestionPicker.h文件中的所有代码并进行更改,从“Alt-click”声明中打开old-copy-somehow-persisting-version,然后粘贴代码那里。这不能解决潜在的问题,只是将我的更改添加到Xcode正在使用的错误的旧版本文件中。我可以继续使用这个hack进行编码如果我能够在.m实现文件中做同样的事情,除非我无法进入.m文件的旧拷贝 - 某种方式 - 持久版本,因为它项目导航器中的任何位置,项目的Finder窗口或我可以访问的任何其他位置都不存在。

有什么想法吗?有帮助吗?非常感谢!

1 个答案:

答案 0 :(得分:3)

Xcode不保留源文件,只是指向它们。很可能你正在编辑Xcode没有使用的副本。

在Xcode中检查它正在使用的文件的位置:

enter image description here