我最近升级到了Xcode 4(这是一次很棒的升级),但现在我收到了一些我之前没有得到的警告。我查看了论坛和其他SO帖子,但没有遇到如何解决这个问题。
我得到的警告是丢失文件的项目级警告。正在显示的文件已从项目导航器视图中删除(也选择从文件系统中删除)。但是,它似乎仍以某种方式显示为与项目相关联,即使该文件不再出现在Project导航器中。
我环顾四周,却找不到如何告诉Xcode这些文件已经消失,不再给我发出警告。这是我在Xcode4中获得的截图,但从未进入过Xcode 3。
答案 0 :(得分:297)
这些解决方案太难了。问题是你已经从文件系统中删除了项目,但SVN仍然认为它们在那里。 从SVN分离项目将起作用,同样用于删除.svn文件夹但是会破坏您的存储库!
打开控制台,浏览到您的文件夹(“cd / pathToYourFolder”)并输入以下命令要容易得多:
svn delete nameOfMissingFile
如果您丢失的文件的名称包含@字符(例如:视网膜特定的图稿),请确保文件名以@符号终止:
svn delete nameOfMissingFile@2x.png@
对于GIT存储库:
git rm nameOfMissingFile
答案 1 :(得分:55)
在XCode 4.2。+(可能在4+中),您可以避免手动工作和命令行:
就是这样:))
所有那些令人讨厌的警告都消失了!
另外对于Xcode 6 +:选择文件视图“中间图标”后 - 您可以单击左侧的复选框,这将在您下次提交时将其标记为已删除SVN!
答案 2 :(得分:50)
在Xcode5& Xcode6,以下步骤为我工作
Xcode
- > Preferences
- > Source Control
- > uncheck Enable Source Control
然后
Xcode
- > Preferences
- > Source Control
- > check Enable Source Control
答案 3 :(得分:27)
它与项目中的.svn隐藏文件夹有关。
我通过从svn。
分离项目解决了这个问题一个。打开终端并键入以下命令:
defaults write com.apple.finder AppleShowAllFiles TRUE
killall Finder
这将允许您查看项目中的.svn文件夹
湾删除项目文件夹/子文件夹中的每个.svn文件夹
℃。重新启用隐藏文件:
defaults write com.apple.finder AppleShowAllFiles FALSE
killall Finder
d。现在你的项目与svn分离,你不再遇到构建问题。
即将您的项目重新添加到svn或其他任何内容。
我自己是初学者,这是我处理这个问题的方式,所以我不确定这是最好的方法。无论如何,这个问题已经解决了。
答案 4 :(得分:9)
这对我有用:
File
- > Source Control
- > Hide Working Copy Status
然后
File
- > Source Control
- > Show Working Copy Status
答案 5 :(得分:6)
我通过以下方式解决了这个问题:
答案 6 :(得分:4)
我遇到了这个bug,除了在该位置创建一个空文件然后删除它之外,没有办法解决它。它发生在我从项目中删除的文件中,并且手动清理,构建,删除Derived Data目录也不起作用。我相信这是一个错误,如果它发生在多个文件中,那将会非常痛苦。
答案 7 :(得分:4)
我也有这个问题,并且正如用户151215所描述的那样是由于.svn文件夹。
我有一个旧的.svn文件夹,不在项目本身,而是在项目父文件夹中。
违规的.svn文件夹将包含一个包含丢失文件的条目文件。因此,您可以使用Teminal并搜索丢失的文件名字符串,例如grep -lir BagController.m yourRootDevDir / *
比在finder中启用隐藏文件更简单,只需使用终端即可。 cd到相关目录,和mv .svn~ / .Trash
希望这有帮助!
答案 8 :(得分:4)
进入相应的目录并运行:
svn revert fileName
答案 9 :(得分:3)
我使用以下方式处理问题:
启动终端并cd到项目目录。 (例如:cd /Users/Mauro/Src/Pippero-1.2/)
然后输入以下命令:
find . -name .svn -exec rm -rf { } \;
该命令将递归搜索名为.svn的文件(和文件夹)并删除它们
答案 10 :(得分:3)
在Xcode中禁用SVN可以防止出现这些问题(假设您使用其他SVN工具管理存储库)。看到这个问题:
Can you disable version control integration in Xcode 4?
显然,如果您做的其他Xcode项目想要使用SVN,这可能不实用。
答案 11 :(得分:2)
我正在使用svn并设法通过
来解决这个问题 svn delete pathToMissingFile
将删除丢失文件的本地svn副本以及远程存储库中的副本。
或
svn revert pathToMissingFile
将丢弃对丢失文件的更改,这意味着将丢失的文件放回原来的位置。
答案 12 :(得分:1)
非常简单,
Xcode -> Preferences -> Source Control -> uncheck Enable Source Control
并且不要忘记cmd+shift+k
答案 13 :(得分:1)
答案 14 :(得分:1)
以上所有方法都无法解决我遇到的同类问题。做一些搜索,我明白我遇到的问题与SVN冲突有关。
我发现使用命令行存在冲突:
svn status
然后必须解决所有冲突的文件
svn resolved filename1 filename2 ...
一旦冲突解决,警告就从Xcode中消失了
答案 15 :(得分:0)
Alex解决了我丢失文件的问题。
我有另一个问题(虽然它与丢失的文件无关,我觉得这将是更好的主题)
我通过直接进入存储库来修复此问题,在图像下创建一个新目录,以便物理文件夹现在位于SVN服务器中
然后我对源进行了更新,并在我的工作副本中获得了新创建的目录(尽管它没有添加到项目中)。
然后我将图像复制到该目录并使用“添加文件”选项将它们添加到项目中,这使我恢复了“A”状态,并且我能够检入文件。
只想分享这个......因为我花了很多时间。
-anoop
答案 16 :(得分:0)
不要直接在.xcode文件夹中删除文件。从xcode项目导航器中删除文件。 (右键单击该文件,然后选择移至废纸篓)。
现在,要清除此问题,请在同一位置添加相同的文件。并从项目导航器中删除。
答案 17 :(得分:0)
就我而言
答案 18 :(得分:0)
我没有做任何事情。我提交了我的代码并推动了它。关掉XCODE。把它拉下来,一切正常。
答案 19 :(得分:0)
在我的案例中,在以下文件夹路径Sample
中有一个名为/folder1/folder2
的xcode项目。
预期.git
内有/folder1/folder2/Sample/
个文件。
父目录(.git
)中有另一个/folder1
文件导致了该问题。文件夹可能已被删除,留下.git
文件
rm -rf /folder1/.git
如果将项目移动到一个全新的位置,则修复了层次结构中父目录中没有.git
文件的问题,这就是上述解决方案可以工作的线索。
答案 20 :(得分:0)
构建后按Cmd + 7并选择最新的构建操作。它看起来好像旧的Xcode吗? :)