맥 저장 공간이 부족하거나 Xcode 빌드 오류가 반복되면 DerivedData를 지워도 되는지 먼저 걱정돼요. 프로젝트 원본까지 사라지는 작업처럼 보이지만, 기본 구성에서는 소스 코드와 분리된 빌드 데이터예요.
다만 DerivedData 안에만 남겨둔 앱 파일, dSYM, 테스트 결과, 로그는 함께 사라질 수 있어요. 전체 삭제보다 문제가 생긴 프로젝트 폴더만 먼저 지우는 편이 안전하고 효율적이에요.
- DerivedData는 Xcode가 만든 빌드 중간 파일과 인덱스를 보관해요
- 프로젝트 폴더의 소스 코드와 Git 커밋 기록은 일반적으로 남아요
- 삭제 후 필요한 빌드 데이터와 인덱스는 다시 생성돼요
- 첫 빌드, 자동완성, 코드 검색은 한동안 느릴 수 있어요
- 한 프로젝트만 문제라면 해당 프로젝트 폴더만 삭제해요
- 보관하지 않은 빌드 결과물과 과거 로그는 자동 복구되지 않아요
- Archives와 시뮬레이터 데이터는 DerivedData와 별도예요
| 항목 | 삭제 영향 | 자동 재생성 | 주의사항 |
|---|---|---|---|
| 프로젝트 소스 코드 | 남아요 | 해당 없음 | 원본 프로젝트 경로를 먼저 확인해요 |
| Git 기록 | 남아요 | 해당 없음 | 삭제 대상이 DerivedData인지 확인해요 |
| 빌드 중간 파일 | 지워져요 | 가능 | 첫 빌드가 오래 걸릴 수 있어요 |
| 빌드 결과물 | 지워질 수 있어요 | 다시 빌드 가능 | 필요한 앱·프레임워크·dSYM은 따로 보관해요 |
| 코드 인덱스 | 지워져요 | 가능 | 자동완성과 검색이 잠시 느려져요 |
| 기존 빌드·테스트 로그 | 지워질 수 있어요 | 기존 기록은 불가 | 필요한 로그는 먼저 내보내요 |
| Archives | 남아요 | 해당 없음 | Window → Organizer → Archives에서 별도 관리해요 |
| 시뮬레이터 데이터 | 남아요 | 해당 없음 | Window → Devices and Simulators와 혼동하지 마세요 |
| Compilation Cache | 일반적으로 남아요 | 별도 관리 | DerivedData 전체 삭제와 같은 항목으로 보지 않아요 |

Xcode DerivedData는 삭제해도 되나요?
판정은 일반적으로 안전이에요. DerivedData는 프로젝트를 빌드하고 분석하면서 Xcode가 만든 데이터라서 정상적인 프로젝트 원본과 역할이 달라요.
Apple의 Xcode 26 릴리스 노트에도 특정 빌드 문제의 해결 절차로 Xcode를 종료하고 프로젝트의 DerivedData를 정리한 뒤 다시 실행하는 방법이 나와요. 기본 경로는 ~/Library/Developer/Xcode/DerivedData예요.
예외는 사용자 지정 경로예요. Xcode → Settings → Locations에서 저장 위치 관련 설정을 확인하고, 이전 버전에서 Preferences로 표시된다면 같은 위치 설정을 찾아보세요.
DerivedData를 삭제하면 지워지는 것과 남는 것
지워지는 핵심 데이터는 컴파일 중간 파일, 빌드 제품, 코드 인덱스, 일부 로그예요. 대부분은 다음 빌드에서 다시 만들어지지만 과거 로그와 보관하지 않은 결과물은 원래 상태로 돌아오지 않아요.
남는 것은 일반적인 프로젝트 소스, 에셋, 설정 파일, Git 저장소와 커밋 기록이에요. 단, 터미널에서 경로를 잘못 입력하면 다른 폴더까지 지울 수 있으므로 삭제 대상 경로를 눈으로 확인해야 해요.
배포용 Archives는 Organizer에서 따로 관리해요. 시뮬레이터 기기와 앱 데이터, 다운로드한 플랫폼 구성요소도 DerivedData 전체 삭제 대상이 아니에요.
DerivedData 삭제가 도움이 되는 경우
오래된 빌드 캐시가 현재 코드와 맞지 않거나 인덱싱이 꼬인 경우에는 도움이 될 가능성이 높아요. 빌드는 되는데 자동완성, 코드 이동, 검색 결과가 이상할 때도 재인덱싱을 유도할 수 있어요.
다만 소스 코드 오류, 서명 설정, 패키지 버전 충돌, 잘못된 빌드 설정은 캐시를 지워도 다시 나타날 수 있어요. 삭제는 원인을 고치는 작업이 아니라 오래된 생성 데이터를 초기화하는 작업에 가까워요.
| 증상 | 도움 가능성 | 이유 | 다음 조치 |
|---|---|---|---|
| 한 프로젝트만 빌드가 이상함 | 높음 | 오래된 중간 파일일 수 있어요 | 해당 프로젝트 폴더만 삭제해요 |
| 자동완성·코드 검색 오류 | 높음 | 인덱스 재생성을 유도해요 | 삭제 후 인덱싱 완료를 확인해요 |
| Xcode 업데이트 후 빌드 오류 | 중간 | 이전 버전 생성물이 남았을 수 있어요 | 프로젝트별 삭제 후 다시 빌드해요 |
| 맥 저장 공간 부족 | 높음 | 여러 프로젝트의 생성물이 쌓여요 | 오래된 프로젝트부터 확인해요 |
| 코드 문법·링크 설정 오류 | 낮음 | 원인이 프로젝트 설정에 있어요 | 빌드 로그와 설정을 확인해요 |
| 시뮬레이터 부팅·앱 데이터 오류 | 낮음 | 시뮬레이터는 별도 관리돼요 | Devices and Simulators 또는 Simulator를 확인해요 |
삭제 전 반드시 확인할 사항
가장 먼저 프로젝트 원본이 어디에 저장됐는지 확인해요. Finder에서 .xcodeproj 또는 .xcworkspace가 있는 폴더와 DerivedData 폴더가 서로 다른지 비교하면 돼요.
Git을 사용한다면 현재 변경 사항을 저장하고 필요한 내용을 커밋하거나 백업해요. DerivedData 삭제가 Git을 지우지는 않지만 삭제 직전 원본 상태를 확인하면 경로 착오를 줄일 수 있어요.
이럴 때는 바로 삭제하지 마세요
프로젝트 원본 경로를 찾지 못했거나 Derived Data 위치를 사용자 지정했는지 모른다면 먼저 설정을 확인해요. 필요한 앱 파일, 프레임워크, dSYM, 테스트 결과, 로그를 DerivedData에서만 보관하고 있어도 복사하기 전에는 지우지 마세요.
Library 폴더 구조가 헷갈린다면 맥 Library 폴더 삭제 안전 기준을 먼저 확인해요. DerivedData 하위 폴더만 선택해야 하며 상위 Library 또는 Developer 폴더 전체를 삭제하면 안 돼요.
- 프로젝트 원본 폴더와 DerivedData 폴더를 구분했는지 확인
- 저장하지 않은 코드 변경이 없는지 확인
- 필요한 변경 사항을 Git에 반영하거나 백업했는지 확인
- Xcode를 완전히 종료했는지 확인
- 사용자 지정 Derived Data 위치를 쓰는지 확인
- 보관할 앱·프레임워크·dSYM·로그가 없는지 확인
- 프로젝트별 삭제로 충분한지 확인
- Archives·시뮬레이터 데이터와 혼동하지 않았는지 확인
Xcode DerivedData를 안전하게 삭제하는 방법
문제가 한 프로젝트에만 있다면 프로젝트별 삭제부터 해보세요. 전체 삭제는 여러 프로젝트 오류가 겹치거나 저장 공간을 넓게 정리할 때 선택하는 편이 좋아요.
1. 특정 프로젝트 DerivedData 삭제
Xcode를 종료한 뒤 Finder에서 이동 → 폴더로 이동을 선택하거나 Shift + Command + G를 눌러요. ~/Library/Developer/Xcode/DerivedData를 입력한 다음 프로젝트 이름으로 시작하는 하위 폴더를 확인해 휴지통으로 옮겨요.
폴더 이름 뒤에는 구분용 문자열이 붙을 수 있어요. 이름과 최근 수정 시각을 함께 확인하고 확실하지 않다면 삭제하지 마세요.
2. DerivedData 전체 삭제
같은 경로에서 DerivedData 안의 하위 항목을 모두 휴지통으로 옮겨요. 여러 프로젝트가 다음 실행 때 다시 빌드되고 인덱싱되므로 작업 직전에 전체 삭제하는 것은 피하는 편이 좋아요.
3. 터미널에서 전체 삭제
터미널을 쓸 때는 먼저 open ~/Library/Developer/Xcode/DerivedData를 실행해 Finder에서 대상 폴더가 맞는지 확인해요. 기본 경로가 맞고 Xcode가 종료된 상태에서만 아래 명령을 사용하세요.
rm -rf "$HOME/Library/Developer/Xcode/DerivedData"/*
이 명령은 휴지통을 거치지 않아요. 사용자 지정 경로를 쓰거나 표시된 경로가 조금이라도 다르면 실행하지 마세요.
| 방법 | 삭제 범위 | 장점 | 적합한 상황 |
|---|---|---|---|
| 프로젝트 폴더만 삭제 | 한 프로젝트 | 다른 프로젝트 재빌드를 피함 | 오류가 한 프로젝트에만 있을 때 |
| Finder에서 전체 삭제 | 모든 DerivedData | 대상을 눈으로 확인 가능 | 용량 정리와 전체 초기화가 필요할 때 |
| 터미널 전체 삭제 | 기본 경로 전체 | 빠르게 처리 가능 | 명령어와 경로에 익숙할 때 |
| Product → Clean Build Folder | 현재 프로젝트 재빌드 중심 | 가장 가벼운 초기화 | 빌드 파일만 새로 만들고 싶을 때 |
Clean Build Folder는 현재 프로젝트를 다시 빌드하기 위한 메뉴이고, 모든 프로젝트의 DerivedData를 비우는 작업과 같지 않아요. 단순한 캐시 정리가 목적이라면 맥 캐시 파일 삭제 기준도 함께 확인해보세요.
맥 전체 용량이 부족하다면 맥 저장 공간 부족 해결 순서처럼 큰 항목부터 확인하는 편이 효율적이에요.
삭제 후 첫 빌드가 느려지는 이유
DerivedData를 지우면 Xcode는 컴파일 중간 파일과 프로젝트 인덱스를 다시 만들어요. 그래서 첫 빌드는 평소보다 오래 걸리고 자동완성이나 코드 이동이 바로 정상 속도로 나오지 않을 수 있어요.
이는 데이터가 손상된 신호가 아니라 재생성 과정에서 나타나는 정상적인 변화예요. 빌드와 백그라운드 인덱싱이 끝난 뒤 다시 확인해보세요.
Xcode 26의 Compilation Cache는 DerivedData와 구분되는 별도 캐시예요. Xcode → Settings → Locations에서 용량 설정을 확인할 수 있으며, DerivedData 전체 삭제와 같은 작업으로 단정하면 안 돼요.
DerivedData를 삭제해도 문제가 해결되지 않는 경우
같은 오류가 즉시 다시 나타나면 캐시보다 코드나 설정을 먼저 봐야 해요. 빌드 로그의 첫 오류, 서명과 프로비저닝, 패키지 버전, 스크립트 출력 경로를 차례로 확인해보세요.
시뮬레이터가 부팅되지 않거나 앱 내부 데이터가 꼬인 문제는 DerivedData 삭제 대상이 아니에요. Xcode 26.6에서는 Window → Devices and Simulators 또는 Simulator 앱에서 해당 기기와 앱 데이터를 별도로 확인해요.
배포했던 빌드의 dSYM이나 앱 파일이 필요하다면 Window → Organizer → Archives를 먼저 확인해요. 배포한 앱의 충돌 로그를 분석할 계획이라면 해당 archive를 보관하는 편이 좋아요.
복구 확인이 필요한 신호
삭제 후 .xcodeproj, .xcworkspace, 소스 파일까지 보이지 않는다면 DerivedData가 아닌 원본 경로를 지웠을 가능성이 있어요. 추가 삭제를 멈추고 Finder 휴지통, Time Machine이나 다른 백업, Git 원격 저장소를 확인하세요.
터미널의 rm -rf로 원본을 지웠다면 휴지통에서 찾을 수 없어요. 백업과 원격 저장소에서 복구할 수 있는지 먼저 확인하고 같은 디스크에 새 파일을 많이 쓰는 작업은 피하는 편이 좋아요.
자주 묻는 질문
.git에 있어 남아요. 삭제 대상이 DerivedData 하위 폴더인지 확인하면 돼요.기준 · 2026년 8월 6일 · Xcode 26.6 안정 버전 기준. Xcode 버전에 따라 메뉴 이름과 화면 구성이 달라질 수 있어요.