~ / Library / Developer / Xcode / DerivedData 디렉토리에서 안전하게 삭제하려면 어떻게해야합니까?


90

이전 (교체 가능한?) 데이터를 제거하고 싶은데 DerivedData 콘텐츠가 후보가 될 가능성이 높습니다. 이름이 DerivedData 이므로 누락 된 경우 빌드 단계에서 생성되고 존재하는 경우 동일한 단계에서 사용되는 정보라고 가정합니다. 그러면 두려움없이 오래된 프로젝트 데이터를 삭제할 수 있다는 것이 논리적으로 보이며 이전 프로젝트를 빌드해야한다면 처음에는이 모든 파생 데이터를 다시 생성해야합니다.

내가 여기서 착각 했나?


8
Joshua가 설명 했듯이
Fattie

아마도 내 대답에서 그 점을 강조하기 위해 강조하는 것 외에도 모든 SO 마크 업 트릭을 사용해야 할 것입니다. :-D 블록 인용 별표 슬래시 주석 코드 굵은 기울임 꼴 글 머리 기호 목록 등
Joshua Nozzi

17
@JoeBlow는 실제로 Joshua가 설명했듯이 "나중 디버깅을위한 dSYM 데이터"를 포함 하는 Archives 디렉토리입니다. 아카이브 디렉토리는 것입니다 형제DerivedData의 이 아래, 같은 레벨의 의미 디렉토리 ~/Library/Developer/Xcode로, DerivedData "피 묻은 폴더에 있음"(DerivedData)가 않습니다 그래서, NOT dSYM 데이터를 포함하고 그것의 내용이 안전하게 삭제할 수 있습니다.
mluisbrown 2013-06-05

4
새 버전을 릴리스 할 때마다 Xcode에서 .xcarchive를 내 git repo로 복사하고 버전 제어하에 유지합니다. 이것은 특정 컴퓨터의 Xcode 디렉토리에 의존하지 않고 항상 오래된 .dSYM을 얻을 수있는 좋은 방법입니다.
Bill

답변:


123

파생 데이터 폴더는 모든 중간 빌드 정보, debug- 및 자료 구축 목표뿐만 아니라 프로젝트의 인덱스가 포함되어 있습니다. 이상한 인덱스 문제 (코드 완성이 제대로 작동하지 않음, 지속적인 재 인덱싱 또는 느린 프로젝트)가있는 경우 파생 데이터를 삭제하는 것이 유용 합니다. 전체 폴더를 삭제하면 Xcode 4가 알고있는 모든 프로젝트에 대해이 정보가 손상 됩니다.

아카이브 폴더 (파생 데이터의 형제) 목표물의 보관 형태를 포함한다. 즉, 릴리스 빌드와 나중에 디버깅을위한 dSYM 데이터입니다. 이것은 당신이 하면 응용 프로그램의 디버깅 배포 버전을 할 수 있도록하려면 삭제합니다.

오거나이저 창을 열고 프로젝트 탭을 선택하여 주어진 프로젝트에 대한 파생 데이터를 핵무기 할 수 있습니다. 원하는 프로젝트를 선택하고 파생 데이터 경로 옆에있는 삭제 버튼을 클릭합니다. 이것은 문제 프로젝트에 대한 "외과 적 파업"에 가깝습니다.


1
확실한. 명령 줄로 이동하여 "man rm"을 입력하십시오. :-)
Joshua Nozzi

9
한숨. 알아 rm. 프로젝트와 연결된 폴더를 해결하는 방법을 찾고 싶었습니다 ~/Library/Developer/Xcode/DerivedData/MyProject-hghjhjhkjh/. 내가 찾은 가장 쉬운 방법은 XCode 환경 설정을 통해 프로젝트 폴더에 상대적인 DerivedData 폴더를 설정하는 것입니다.
asgoth

4
그냥 빨리 참고 :에서 엑스 코드 6.x에서 , projects자신의 창 (안 주최자)에 있습니다.
Olie 2015-09-12

1
나는 당신의 군사 전문 용어의 XD 좋아
조쉬

1
많은 새로운 배포 도구 (AppCenter, HockeyApp, Crashlytics 등)에서 dSYM 파일을 직접 저장하지 않아도되도록 요청합니다.
Honey

38

'파생 데이터'의 내용은 빌드 타임에 생성됩니다. 안전하게 삭제할 수 있습니다. '파생 데이터'를 삭제하려면 아래 단계를 따르십시오.

  1. 선택 엑스 코드 -> 환경 설정 ...

1 단계

  1. 팝업 창이 열립니다. ' 위치 '탭을 선택 하십시오. 위치 하위 탭에서 ' 파생 데이터 '를 볼 수 있습니다 . 경로 옆에있는 화살표 아이콘을 클릭합니다.

2 단계

  1. '파생 데이터'가 포함 된 폴더가 열립니다. 마우스 오른쪽 버튼을 클릭하고 폴더를 삭제합니다.

3 단계


그래서 내 앱이 시뮬레이터에 있지만 코드에서 실행되지 않고 코드에서 삭제 한 다음 다시 실행하면 문제가 발생합니까?
Manthan

@Manthan : 아니요. 문제가 발생하지 않습니다.
Jayprakash Dubey 2015

30

예, 이러한 데이터는 빌드 시간 동안 생성되며 원하는 경우 삭제할 수 있지만 문제는 아닙니다.

다시 빌드하면 다시 생성됩니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.