본문 바로가기
iOS

[iOS] Xcode에 파일/폴더 추가 및 삭제 옵션 (Create groups / Create folder references, Remove Reference / Move To Trash)

by nazan9 2022. 2. 9.

Xcode의 파일 추가/삭제 옵션에 대해 설명하기 전에 

파일에 대한 참조는 xcodeproj/project.pbxproj 파일에 저장하고 있다.

따라서, 파일을 추가하거나 삭제한 경우 project.pbxproj도 함께 커밋해줘야 한다. (협업 시 실수하게 되면 은근 귀찮다..)

 

 

Xcode에 파일 추가하기

Xcode 네비게이터 영역에 파일/폴더를 드래그 앤 드랍하여 추가하면 아래와 같은 창이 뜬다.

파일/폴더를 네비게이터 영역에 드래그 앤 드랍하면 위와 같은 창이 뜨게 된다.

1. Destination

- Copy items if needed

파일을 복사하여 추가하는 옵션으로, 꼭 체크하는 것이 좋다.

이 옵션 없이 추가한다면 프로젝트 폴더로 복사되지 않고 원본의 레퍼런스를 참조하게 된다. 따라서 원본의 폴더가 변경되거나 삭제되었을때 더 이상 해당 파일을 사용할 수 없게 된다.

또한, 내 project.pbxproj 파일에는 반영이 되어 있지만 이대로 git에 커밋하게 된다면 다른 사람들에게는 해당 파일이 존재하지 않아 오류가 발생할 수 있다.

 

 

2. Added folders

- 파일 추가

해당 옵션은 'Added folders' 옵션으로, 파일 추가에 대해서는 두 옵션에 대한 차이가 없다. 

 

- 폴더 추가

1) Create groups

  • 노란 폴더가 생성된다.
  • 가상 폴더의 개념으로 파일 시스템(Finder)을 의미하지 않는다.
  • Finder에서 폴더 내에 파일을 추가해도 프로젝트 폴더 내에는 반영되지 않는다.
  • Finder에서 폴더의 이름을 변경해도 프로젝트 내에서 폴더가 남아 있다. (내부 파일은 사용할 수 없다.)
  • Finder에서 폴더를 삭제해도 프로젝트 내에 폴더는 남아 있다. (내부 파일은 사용할 수 없다.)

노란 폴더 아이콘으로 생성된다. / Finder에서 폴더 삭제 시 프로젝트 내에 폴더는 남아 있다.

 

2) Create folder references

  • 파란 폴더가 생성된다.
  • 파일 시스템(Finder)의 폴더에 일대일 맵핑된다. 따라서, 변경 내역이 반영된다.
  • Finder에서 폴더 내에 파일을 추가하면 프로젝트 폴더 내에도 파일이 추가된다.
  • Finder에서 폴더의 이름을 변경하면 프로젝트 내에서 폴더가 삭제된다.
  • Finder에서 폴더를 삭제하면 프로젝트 내에서도 폴더가 삭제된다.

파란 폴더 아이콘으로 생성된다. / Finder에서 폴더 삭제 시 프로젝트 내 폴더도 삭제된다.

 

 

 

Xcode에서 파일 삭제하기

네비게이터에서 삭제를 클릭했을 때 위와 같은 확인 창이 뜬다.

- Remove Reference

파일에 대한 참조만 제거된다. 따라서 파일 추가 시 Copy items if needed 옵션을 선택하지 않았다면, 참조만 제거하여도 상관없다.

만약 Copy items if needed 옵션을 선택하여 추가했는데 Remove Reference로 제거한다면 실제 프로젝트 폴더에 파일은 남아있지만, 참조만 제거가 된 상태이다. 남은 파일은 Finder에서 직접 삭제할 수 있다.

 

- Move to Trash

파일에 대한 참조와 함께 Finder에서 확인할 수 있는 물리적인 파일까지 함께 제거된다.

'iOS' 카테고리의 다른 글

[iOS] WebView Debugging하기 - Safari Technology Preview 사용 방법  (0) 2021.08.04

댓글