我的磁盘空间不足,并通过第三方实用程序检查 ~/Library/Developer/Xcode/DerivedData 目录占用了大约 22GB 的磁盘空间。
我搜索了stackoverflow并找到了这篇文章
How can I safely delete in my ~/Library/Developer/Xcode/DerivedData directory?
这个问题的公认答案表明我不应该从这个目录中触摸/删除文件夹。所以我所做的是
找到我在 Appstore 上可用的应用程序的现有构建项目文件夹
从派生目录中删除了文件夹
推出 XCode 5
打开那个项目
清洁构建
在模拟器上测试和编译
重新存档
一切正常。什么都没有损坏。
除非我错过了该帖子答案中的某些内容,否则我想通过询问经验丰富的开发人员来确保,如果我从 DerivedData 中删除所有文件夹,它不会在构建、测试和编译这些项目时对我造成伤害。
是的,您可以直接从 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
:
https://i.stack.imgur.com/nrUTo.png
您可以找到项目列表,您可以转到 DerivedData
文件夹,也可以直接删除单个项目的 DerivedData
https://i.stack.imgur.com/ICgNp.png
我不在 Xcode5 上工作,但在 4.6.3 中,您可以找到 DerivedData
文件夹,如下图所示:
https://i.stack.imgur.com/TmJ9F.png
点击首选项后..
https://i.stack.imgur.com/N4USo.png
你得到这个窗口
https://i.stack.imgur.com/ZbdlR.png
我经常清除derivedData,以至于我有一个别名。它可以解决构建问题。我在 /Users/Myusername/.bash_profile 中有以下内容
alias purgeallbuilds='rm -rf ~/Library/Developer/Xcode/DerivedData/*'
然后在终端中,我输入 purgeallbuilds,DerivedData 的所有子文件夹都会被删除。
XCODE 12 更新
在选项卡上:
点击 Xcode Preferences Locations -> Derived Data
您可以访问所有派生数据并通过删除它们来清除它们。
XCODE 7.2 更新
(也适用于 7.1.1)
单击窗口,然后单击项目,然后删除派生数据。
像这样:
https://i.stack.imgur.com/f6EJk.png
然后在这里删除它:
https://i.stack.imgur.com/ZbUBK.png
希望有帮助!
$ 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/*
还有一些在:
open ~/Library/Developer/Xcode/iOS\ DeviceSupport/
刚刚用一个小脚本创建了一个 github repo,它创建了一个 RAM 磁盘。如果您将 DerivedData 文件夹指向 /Volumes/ramdisk
,则在弹出磁盘后所有文件都将消失。
它加快了编译速度,也消除了这个问题
最好使用 DTerm 启动
XCode 8:删除当前项目的派生数据:
点击产品菜单
按住选项键
单击清理构建文件夹
XCODE 10 更新
单击状态栏上的 Xcode 然后选择首选项
在弹出窗口中选择最后一段之前的位置
您可以使用右侧小图标访问派生数据文件夹
https://i.stack.imgur.com/bDP1Y.png
~/库/开发者/Xcode/DerivedData
~/tmp/DerivedData
,以便更轻松地访问已构建的文件/捆绑包。
是的,可以安全删除,我的脚本搜索并核对它找到的每个实例,轻松修改到本地目录
#!/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
我会说它是安全的——我经常删除许多 iOS 项目 this way 的文件夹的内容。而且,我在构建或提交到 App Store 方面没有任何问题。该过程会删除 Xcode 5 和 6 的派生数据并清理项目的缓存资产。
有时,只需在派生数据目录上调用 rm -rf 就会留下一两个挥之不去的文件,但我的脚本会循环,直到所有文件都被删除。
“派生数据”的内容是在构建时生成的。您可以安全地删除它。请按照以下步骤删除“派生数据”:
选择 Xcode -> 首选项..
https://i.stack.imgur.com/YlPIf.png
这将打开弹出窗口。选择“位置”选项卡。在位置子选项卡中,您可以看到“派生数据”单击路径旁边的箭头图标。
https://i.stack.imgur.com/qdvZQ.png
这将打开包含“派生数据”的文件夹,右键单击并删除文件夹。
https://i.stack.imgur.com/C0NUC.png
不定期副业成功案例分享
/Users/YourUsername/Library/Developer/Xcode/DerivedData
处的文件夹并将它们全部删除。正如你已经为 XCode 7 编辑过的一样,我想你可能想为 XCode 8 再次编辑它。