[Xcode] 프로젝트 이름 바꾸기 (프로젝트 'AAA'를 프로젝트 'BBB'로 변경)

2018. 1. 27. 21:10IT, Smart Life


기존 프로젝트를 새로운 프로젝트 이름으로 바꿔 사용할 수는 없을까?


기존에 만들어 뒀던 프로젝트의 내용이 새로 만들 프로젝트의 내용과 거의 비슷할 때, 프로젝트 파일을 통채로 복사하고 이 프로젝트 이름을 새로운 앱 이름에 맞춰 수정해서 사용하고 싶은데, 뭐 간단한 방법 없을까? 한번만 바꾸면 나머지도 다 같이 싹~ 바뀌는 그런 기능.


결론부터 말하면 2018년 1월 현재, Xcode는 그런 기능을 전혀 지원하고 있지 않습니다.


January 2018

macOS 10.13.3 (High Sierra)

Xcode 9.2


결국, 기존 프로젝트를 재활용하기 위해서는

1. 새로운 프로젝트를 만들어서 필요한 부분을 복사해서 옮기거나, 

2. 프로젝트 이름을 바꾼 다음, 프로젝트명으로 연결된 모든 설정들을 하나하나 변경해줘야 합니다.


엄청나게 귀찮은 일이 아닐 수 없습니다.




프로젝트 이름 바꾸기 ("AAA"를 "BBB"로)


(주의)

이 방법이 100% 완벽하다고 할 수 없음

- 프로젝트가 복잡하면 복잡할 수록 미처 신경쓰지 못한 부분이 발생할 수 있음

- 한번 시도는 해 보되, 제대로 되지 않으면 그냥 새로 프로젝트를 생성하는 것을 추천함


프로젝트 이름을 바꾸는 방법입니다.

편의상 기존 프로젝트 네임을 AAA, 바꿀 프로젝트 네임을 BBB라고 하겠습니다.


* 코어데이터를 이용하기 위해, "Chapter07-CoreData"라는 프로젝트를 "ToDoList"로 바꿔보았습니다.



Step 1. 프로젝트 이름 바꾸기(Rename)


1. Finder에서 프로젝트 최상위 폴더 이름을 바꾼다. (ToDoList)

2. Xcode로 최상위 폴더 밑에 있는 "AAA" 프로젝트 파일을 연다. (프로젝트가 Xcode로 열린다)

3. 프로젝트 네비게이터에서 "AAA"를 선택하고, 화면 오른쪽의 Identity and Type 에서 Name을 "BBB"로 바꾼다.




4. 컨텐츠 아이템들도 바꾸겠냐는 질문이 뜬다. "Rename"을 선택한다.



5. 경고가 뜬다. "Continue"를 누른다.





Step 2. Scheme 이름 바꾸기

1. 좌측 상단에서 Scheme 을 선택하고 Manage Schemes를 클릭

2. Scheme 이름을 클릭하거나 return 키를 눌러 수정가능한 상태로 들어가서 scheme 이름을 "AAA"에서 "BBB"로 바꾼다.





Step 3. 프로젝트 내부 폴더명 수정, 폴더 Location 수정

1. Xcode를 닫는다.

2. 프로젝트 폴더 안을 보면 바뀐 프로젝트 네임과 기존 네임의 폴더가 공존하고 있는 것을 볼 수 있다.




3. 폴더명을 BBB로 바꿔준다.

4. Xcode로 다시 프로젝트를 열면, 지정했던 폴더를 찾을 수 없기 때문에 "Assets.xcassets"를 찾을 수 없다는 워닝이 뜬다.

5. "OK"를 눌러 워닝을 해제한다.




6. 프로젝트 하위의 폴더를 선택하여 Identity and Type 밑의 Name을 "BBB"로 바꿔준다.




7. (중요) 폴더의 위치(Location)를 폴더 그림을 클릭해서 다시 설정해준다.




Step 4. Build Settings 수정 (Info.plist, product Identifier)

1. 프로젝트 네비게이터에서 프로젝트를 클릭하고, 메인패널에서 "Build Settings"를 선택한다.

2. "Packaging" 메뉴 하위의 Info.plist file 을 BBB/Info.plist 로 수정

3. "Packaging" 메뉴 하위의 Product Bundle Identifier를 BBB로 수정




Step 5. xcdatamodeld 수정 

(아직 끝나지 않았다.)

1. 프로젝트 네비게이터를 보면, 아직도 xcdatamodeld는 AAA.xcdatamodeld 임을 확인 할 수 있다.

2. 이것을 BBB.xcdatamodeld로 바꿔준다.



3. 폴더를 가보면, 제대로 파일이 바뀌어 있음을 알 수 있다. 그러나..



4. 파일경로를 보면, 여전히 BBB.xcdatamodeld 밑에 AAA.xcdatamodel 이 연결되어 있음을 확인 할수 있다.




5. xcdatamodeld 파일을 finder에서 열어서, BBB.xcdatamodel 도 마저 이름을 바꿔준다.

   * 프로젝트 네비게이터의 각 파일 오른쪽의 "?"는 깃허브 같은 서비스를 현재 이용할 수 없다는 표시로, 나중에 commit 하면 사라진다







Step 6. Rebuild (Clean, Build) 하면 변경 완료


1. 클린 (Product > Clean 또는 Command + Shift + K)

2. 빌드 (Product > Build 또는 Command + B)

3. 바뀐 프로젝트명(새로운 앱이름)으로 앱이 설치되는 것을 확인한다. 이제 정말 끝.


      




* 본 포스팅은 아래 링크를 참고하였습니다. 링크 내용은 Xcode 8 버전 기준이라, 틀린 부분이 있어 보완하였습니다.

https://stackoverflow.com/questions/33370175/how-do-i-completely-rename-an-xcode-project-i-e-inclusive-of-folders