我的磁盘空间不足,并检查了第三方实用程序,其中〜/ Library / Developer / Xcode / DerivedData目录占用了大约22GB的磁盘空间。
我搜索了stackoverflow并找到了这篇文章
How can I safely delete in my ~/Library/Developer/Xcode/DerivedData directory?
此问题的接受答案表明我不应该触摸/删除此目录中的文件夹。所以我做的是
除非我在帖子中遗漏了答案,否则我想通过询问有经验的开发人员来确保如果我从DerivedData中删除所有文件夹,那么在构建,测试和编译这些项目时不会对我造成伤害。
答案 0 :(得分:348)
是的,您可以直接从DerivedData
子文件夹(Not DerivedData Folder)
中删除所有文件。
这不会影响您的项目工作。在构建期间生成DerivedData
文件夹的内容,您可以根据需要删除它们。这不是问题。
再次构建项目时,将重新创建DerivedData
的内容。
Xcode8 +更新
从Xcode8中删除了窗口选项卡中的项目选项,因此您仍然可以使用第一种方式:
Xcode -> Preferences -> location -> click on small arrow button as i explain in my first answer.
Xcode7.3更新 要删除特定项目的DeriveData,您只需按照以下步骤操作:
转到Window -> Project
:
您可以找到项目列表,也可以转到DerivedData
文件夹,也可以直接删除单个项目的DerivedData
我不是在使用Xcode5,但在4.6.3中你可以找到DerivedData
文件夹,如下图所示:
点击偏好设置..
你得到这个窗口
答案 1 :(得分:110)
我经常清除derivedData,因为我有一个别名。它可以解决构建问题。我在/Users/Myusername/.bash_profile
中有以下内容alias purgeallbuilds='rm -rf ~/Library/Developer/Xcode/DerivedData/*'
然后在终端中输入purgeallbuilds,删除DerivedData的所有子文件夹。
答案 2 :(得分:34)
答案 3 :(得分:33)
在标签上:
您可以访问所有派生数据并通过删除来清除。
答案 4 :(得分:23)
result = null;
return true;
显示至少有两个文件夹很大:
$ du -h -d=1 ~/Library/Developer/Xcode/*
随意删除文件夹中的内容:
1.5G /Users/horace/Library/Developer/Xcode/DerivedData
9.4G /Users/horace/Library/Developer/Xcode/iOS DeviceSupport
和一些人:
rm -rf ~/Library/Developer/Xcode/DerivedData/*
答案 5 :(得分:17)
刚刚用一个小脚本创建了一个github repo,它创建了一个RAM磁盘。如果您将DerivedData文件夹指向/Volumes/ramdisk
,则在弹出磁盘后,所有文件都将消失。
它加快了编译速度,也消除了这个问题
最佳使用DTerm
启动答案 6 :(得分:11)
XCode 8:删除当前项目的派生数据:
单击“产品菜单”
按住Option键
单击“清理构建文件夹”
答案 7 :(得分:3)
答案 8 :(得分:2)
〜/库/开发商/ Xcode中/ DerivedData
答案 9 :(得分:1)
是的,删除安全,我的脚本搜索并核实它找到的每个实例,轻松修改为本地目录
#!/usr/bin/env bash
set -o errexit
set -o nounset
set -o pipefail
IFS=$'\n\t'
for drive in Swap Media OSX_10.11.6/$HOME
do
pushd /Volumes/${drive} &> /dev/null
gfind . -depth -name 'DerivedData'|xargs -I '{}' /bin/rm -fR '{}'
popd &> /dev/null
done
答案 10 :(得分:0)
我收到此错误是因为Int在一个文件中是int。太蠢了。
答案 11 :(得分:-1)
我认为这是安全的 - 我经常删除许多iOS项目的文件夹内容this way。而且,我对构建或提交到App Store没有任何问题。对于Xcode 5和6,该过程将删除派生数据并清除项目的缓存资产。
有时,只需在派生数据目录上调用rm -rf会留下一两个延迟文件,但我的脚本会循环,直到所有文件都被删除。
答案 12 :(得分:-2)
“衍生数据”的内容'在构建期间生成。您可以安全地删除它。请按照以下步骤删除“派生数据”#39; :