Xcode8更新后,或者移动删除真实文件夹和文件后,编译工程出现的警告处理:但不影响运行。
原因导致:虚拟文件在真实文件中的目录路径是不同的,一旦删除真实路径后,版本控制找不到对应文件和文件夹就好警告。
方法一:
该方法只是取消版本控制,但对于随时需要提交代码到仓库不太好。
Xcode->Preferences->Source->Enable Source Control 勾勾去掉:
方法二:
项目中提交过svn或Git后,再在本机上删除不用的文件和文件夹以及图片资源后,build后会有 ”xx“is missing from working copy 的警告。
直接在终端下用svn或者git命令删除missing的文件:(需要cd到提示你missing 文件的路径下):可能真实文件中找不到对应的文件,但是执行下面的命令就可以消除,特别注意的是一定要写全文件名(包括后缀名),还有一种情况就是找不到警告的文件目录(可能移动或者删除):这种情况只需要commit一次就好了。
svn delete nameOfMissingFile
或用Git(如果你用的是Git的话)
git rm nameOfMissingFile
特别的是:
icon的处理如下:
git
rm
Assets.xcassets
/AppIcon
.appiconset
/Contents
.json
以上办法基本可以解决问题,如果更改编译模式从debug改到release,可能还会报出这些错误。重启了Xcode再编译就解决。
网上其他的方法,比如
一、
1.打开终端
2.cd 到警告所提示的文件夹下
3.执行命令svn rm --force 丢失文件的名称
4.回车
这种方法不怎么好,假如丢失文件所在的文件夹都没了 就根本cd不到此文件夹,而且一个一个删除费时费力。
二、重新从svn出库一份,相比还是麻烦
三、find . -type d -name .svn | xargs rm -rf //该命令为直接删除指定文件夹下所有SVN相关
sudo find /Users/Scitel/Desktop/Scitel_Project/iOS-BigEvent/-name ".svn" -exec rm -r {} \;//红色字体为路径