xcode 4 프로젝트 및 실제 폴더 이름 변경
Xcode 4에서 프로젝트 이름을 변경하는 방법은 알고 있습니다만, 소스 폴더 이름은 어떻게 변경합니까?문제는 Xcode에서 프로젝트 이름을 변경하면 Xcode 내에서만 이름이 변경된다는 것입니다. (이전과 비교하여 진행된 것이지만) - 왜 Xcode는 파일 시스템에서 폴더 이름을 변경하지 않는지 모르겠습니다.
텍스트 편집기에서 pbxproj 파일을 수동으로 편집하지 않고도 Xcode 내에서 이 작업을 수행할 수 있습니다!
방법:
파인더에서 원본 폴더의 이름을 변경합니다.Xcode는 가상(노란색) 프로젝트 폴더가 가리키는 실제 폴더가 언제 변경되었는지 자동으로 감지하지 않으므로 이 폴더 내의 모든 파일이 Xcode로 빨간색으로 바뀝니다.그건 걱정하지 마세요, 3단계에서 고칠게요.
Xcode의 왼쪽 사이드바에서 (지금은 끊어진) 가상 폴더를 클릭하고 파인더의 이름과 일치하도록 이름을 변경합니다(실제로 원하는 이름으로 부르거나 이름을 변경하지 않을 수 있지만, 그것은 미친 짓입니다).폴더 안에 있는 빨간색 파일을 수정하지는 않지만 괜찮습니다. 하지만 괜찮습니다.
Xcode의 오른쪽 사이드바에서 아래 스크린샷에 표시된 아이콘을 클릭하면 파일 대화상자가 나타납니다.이전에 이름을 바꾼 폴더를 선택합니다.이렇게 하면 가상 폴더가 디스크의 실제 폴더와 다시 연결되고 내부의 모든 파일에 대한 링크가 자동으로 수정됩니다.
빌드 설정에서 이전 폴더 이름을 검색하고 발견된 항목의 이름을 수동으로 변경합니다.일반적으로 oldfolder/prefix.pch와 oldfolder/info.plist라는 두 개의 폴더가 있지만 다른 폴더도 있을 수 있습니다.
다 끝냈어!

편집: 이 옵션은 Xcode 5에 계속 있지만 기본적으로 숨겨져 있습니다.표시하려면, "텍스트 설정" 패널 위에 있는 검사자의 얇은 "식별 및 유형" 헤더를 눌러 확장하십시오.
저는 수십 번을 했습니다.
- Xcode Project Navigator에서 제목을 클릭한 다음 편집하여 프로젝트 이름을 변경합니다.
- Xcode를 닫습니다.
- 원본 폴더의 이름을 바꿉니다.
- 파인더를 .
.pbxproj텍스트 편집기와 함께 프로젝트 번들 내부의 파일(상황에 맞는 메뉴 "패키지 내용 표시"). - 원래 폴더 이름을 검색하고 새 폴더 이름으로 바꿉니다.
- 파일을 저장합니다.
- Xcode 프로젝트를 엽니다.
과제: Xcode와 Finder 모두에서 "Play"의 이름을 "Play2"로 변경합니다.
변경 내용:

대상:

단계:
우선 Finder에서 프로젝트를 백업하십시오!
- Xcode Project 탐색기에서 프로젝트 이름 바꾸기 // 프로젝트 이름을 클릭한 후 Enter 키를 누릅니다.
- Xcode Project 탐색기에서 그룹 이름 바꾸기 // 파인더의 폴더 이름에 영향을 미치지 않음
- X코드 닫기
- 파인더에서 외부 폴더 이름 바꾸기(이미지의 왼쪽 열)
위의 모든 단계는 간단하며 부작용이 없습니다. // 이제 까다로운 부분이 나옵니다. 파인더의 내부 폴더 이름(이미지의 중간 열)(.xcodeproj와 동일한 수준의 폴더)입니다.
- Xcode를 닫은 상태에서 Finder의 내부 폴더 이름 바꾸기
- .xcodeproj를 마우스 오른쪽 단추로 클릭하고 "패키지 내용 표시"를 선택합니다.
- Mac 텍스트 편집을 사용하여 .pbxproj 파일 열기
- 모든 "재생"을 검색하고 "재생2"로 바꿉니다.모든 것이 제대로 작동하도록 하려면 검색 표시줄의 왼쪽 끝에 있는 화살표를 클릭하고 검색 속성을 수정합니다."포함"을 "전체 단어"로 변경하고 "대소문자 무시" 선택을 취소합니다.
- .pbxproj 파일 저장
- Xcode 프로젝트를 열고 실행
다음은 XCode4(파일 폴더 포함)에서 프로젝트 이름을 효과적으로 변경하는 방법입니다.
- 문제가 발생하지 않도록 XCode에서 열려 있는 모든 프로젝트를 완전히 닫습니다.
- 문제의 프로젝트를 새 폴더로 복사(중요: 이전 프로젝트의 백업 보관)
- 프로젝트 열기
- XCode4에서 프로젝트 이름을 바꾸고(프로젝트 이름을 두 번 클릭), 이름을 변경한 후 단계를 따릅니다(모든 항목에 예).
- 제품으로 이동하여 구성표를 관리하고 구성표 이름을 변경합니다(구성표 이름을 두 번 클릭).
- 프로젝트 닫기(완전히 닫혔는지 확인하십시오. 그렇지 않으면 다음 단계가 작동하지 않습니다.)
- 파인더에서 프로젝트 폴더로 이동하여 .xcodeproj 파일을 마우스 오른쪽 단추로 클릭한 다음 "패키지 내용 표시" 옵션을 선택합니다.
- 그런 다음 .pbxproj 파일을 마우스 오른쪽 버튼으로 클릭하고 TextEdit으로 엽니다.
- 프로젝트가 있던 폴더 이름의 모든 항목 바꾸기(새 프로젝트 이름의 이전 프로젝트 이름)
- 파일 저장
- 프로젝트를 다시 열고 빌드합니다!
다음은 *.pbxproj 파일의 값을 바꿀 때 주의해야 할 다른 문제입니다.이전 폴더 이름이 FooBar이면 *.pbxproj 파일에 다음과 같은 항목이 표시됩니다.
경로 = FooBar
새 폴더 이름이 Foo Bar라고 가정합니다.즉, 공간을 소개하는 것입니다.그러면, 이 줄은
경로 = "Foo Bar"
단순 찾기 및 바꾸기만 하면 Xcode가 구문 분석할 수 없는 *.pbxproj 파일이 됩니다.새 폴더 이름에 공백이 있고 이전 이름에 공백이 없으면 큰따옴표를 포함해야 합니다.
위의 다양한 답변을 검토하고 노력한 후, 저는 저 자신을 위해 요약하고 있습니다.현재 프로젝트 이름이 ProjAbc이고 ProjDef로 이름을 바꾸려고 합니다.
해당 프로젝트의 Xcode를 종료합니다.
파인더에서 ProjAbc.xcodeproj 위의 폴더를 백업용으로 복제합니다.
새 프로젝트 이름에 맞게 필요하다고 생각되면 Finder에서 ProjAbc.xcodeproj 위의 폴더 이름을 자유롭게 변경합니다.
파인더에서 ProjAbc.xcodeproj와 병렬로 소스 파일 폴더 이름을 ProjAbc에서 ProjDef로 변경합니다.
ProjAbc.xcodeproj용 Xcode를 엽니다(Project Navigator에서는 가상 소스 폴더 ProjAbc의 모든 파일이 빨간색으로 표시됩니다).
Xcode의 왼쪽 사이드바에 있는 Project Navigator에서 (지금은 중단된) 가상 폴더를 클릭하고 Finder - ProjDef의 이름과 일치하도록 이름을 바꿉니다.아직 폴더 안에 있는 빨간색 파일을 수정하지는 않지만 괜찮습니다.
오른쪽 사이드바의 Xcode(왼쪽 사이드바에서 여전히 가상 폴더 선택)에서 File inspector(파일 관리자)에서 아래 스크린샷에 표시된 아이콘을 클릭하여 파일 대화 상자를 엽니다.파일 대화 상자에서 이전에 이름을 바꾼 폴더(ProjDef)를 선택합니다.이렇게 하면 가상 폴더가 디스크의 실제 폴더와 다시 연결되고 내부의 모든 파일에 대한 링크가 자동으로 수정됩니다.

Xcode의 Project Navigator에서 ProjAbc 프로젝트 이름을 클릭하고 ProjDef로 이름을 바꿉니다.
- "프로젝트 내용 항목의 이름을 바꾸시겠습니까?"라는 메시지가 표시됩니다.이름 바꾸기 단추를 누릅니다.
- "프로젝트 이름 변경 및 유사한 작업 전에 Xcode에서 자동 스냅샷을 생성하시겠습니까?"라는 메시지가 표시됩니다.사용 안 함 또는 사용을 누릅니다.그것은 중요하지 않다.
이제 Xcode에서 ProjDef 대상 내부의 "빌드 설정"을 엽니다(ProjDef in Project Navigator).*-Info.plist 및 *-Prefix.pch 파일의 폴더 이름과 파일 이름을 모두 ProjAbc 대신 ProjDef를 포함하도록 변경합니다.
Xcode의 ProjDef 가상 소스 폴더의 "지원 파일"에서 ProjAbc 대신 ProjDef를 포함하도록 *-Info.plist 및 *-Prefix.pch 파일 이름을 다시 변경합니다.
Xcode 메뉴에서 Product/Scheme/Manage Scheme...을 누릅니다.(또는 Xcode 왼쪽 상단의 Scheme Bar에서 "ProjAbc"> Scheme name을 클릭하고 "Manage Scheme..".") 및 대화 상자에서 Scheme 이름을 ProjAbc에서 ProjDef로 변경한 다음 "확인" 버튼을 누릅니다.프로젝트 이름이 단일 단어로 구성된 경우 지금 바로 실행할 수 있습니다!
Xcode에서 Supporting Files/*-Prefix.pch 파일의 상단 주석 행을 편집하고 ProjAbc를 ProjDef로 교체합니다(2회).물론 이 의견을 수정하는 것은 선택 사항입니다.
Xcode를 종료합니다.
파인더에서 ProjDef를 가리킵니다.xcodeproj. (TextWrangler.app에서 열거나 마우스 오른쪽 버튼으로 클릭하여 팝업 메뉴에서 "패키지 내용 표시"를 누른 다음 TextEdit.app에서 file project.pbxproj를 편집합니다.)
텍스트 편집기에서 한 번 표시되어야 하는 "ProjAbc"(전체 Word, 대/소문자 일치)를 검색하고(/* PBX NativeTarget 섹션 */ 시작: productName = ProjAbc;) "ProjDef"로 대체합니다.프로젝트를 실행할 수 있으므로 이 단계는 선택 사항입니다.
프로젝트 이름이 "ProjDefGeh"와 같이 두 개 이상의 별도 단어로 구성되어 있으면 다음 단계를 수행해야 합니다. 가상 소스 파일 폴더의 Finder 폴더에 대한 참조 검색 -
- 라인 검색: 경로 = ProjDefGeh;
- /* ProjDefGeh */ 단락에 한 번 나타납니다.
- 행으로 대체합니다. 경로 = "ProjDefGeh";
텍스트 편집기에서 저장하고 텍스트 편집기를 종료합니다.
바로 그겁니다.위에서 설명한 것처럼 프로젝트 이름이 단일 단어로 구성된 경우 11단계 끝에서 바로 실행할 수 있습니다.
우선 - Xcode 프로젝트의 이름을 바꾸지 마세요!!!
필요하다면, 그 밑에 있는 것이 그것일 수도 있습니다. 저는 그것을 작동시키지 못했고, 결국 새로운 프로젝트를 만들었고, 기존 파일에서 처음부터 다시 복사하기 시작했습니다.Xcode는 정말 아..파일 이름을 "이름"에서 "이름"으로 변경하는 것과 같이 생산적이지 않은 것이 너무 많습니다.그럼, 재미있게 놀아요.
저는 이 문제에 대한 해답이나 해결 방법을 찾았습니다."패키지 내용 표시"를 마우스 오른쪽 단추로 클릭하여 pbxproj 파일을 열고 project.pbxproj 파일을 편집합니다. 경로라는 참조 이름과 다른 항목의 이름을 변경해야 합니다. "/"만 추가된 폴더 이름을 검색하면 됩니다.
바로 그거야.누군가에게 도움이 되길 바랍니다.
저는 위의 답변들, 특히 닉 록우드의 답변들이 매우 유용하다는 것을 알았습니다.
방금 Xcode 8에서 폴더 이름을 몇 개 바꿨는데 두 가지 문제가 더 발생했습니다. A) "작업 중인 복사본 오류에서 누락" B) 코어 데이터 충돌입니다.
이 두 가지 문제를 해결하는 방법:
"작업 복사본 오류에서 오류 발생"
저는 아래 답변이 매우 유용하다는 것을 알았습니다: Swift 3 / Xcode 8 업그레이드 - 작업 복사 오류에서 파생 데이터 파일 100개가 누락되었습니다.
기본적으로 Xcode 8은 엄격한 소스 제어를 가지고 있으며, 이는 위의 오류로 이어질 수 있습니다.다음 작업을 수행해야 합니다.
- Clean Xcode 파생 데이터입니다.
- 소스 제어로 이동하여 상태 새로 고침을 클릭합니다.
- 소스 제어로 이동하여 커밋을 클릭하고 커밋 시 커밋 메뉴의 왼쪽 사이드바에 있는 모든 파일을 선택합니다(오른쪽 클릭 -> 모두 선택).
- 오류가 발생할 수 있습니다.
- Commit 메뉴를 닫습니다.
- 상태 새로 고침.
- Xcode를 종료하여 프로젝트를 닫습니다.
- 프로젝트를 다시 열고 상태를 새로 고치고 다시 커밋합니다.
- 이번에는 커밋이 작동해야 합니다.
- 프로젝트 -> 치료를 클릭합니다.
이미 소스 제어를 사용하도록 설정한 것으로 가정합니다.사용자가 아직 사용하지 않았거나 사용자의 지시에 따라 작동하지 않을 경우 제공된 링크의 더 자세한 지침을 따르십시오.
코어 데이터 충돌
폴더 이름을 변경하면 코어 데이터가 손상될 수 있습니다.이러한 이유에는 여러 가지가 있을 수 있으며, 다음은 제가 제안할 수 있는 몇 가지 수정 사항입니다.
AppDelegate 모델 이름이 잘못되었습니다.이것이 제 상황의 경우였습니다.앱 대표자로 이동하여 찾기
let container = NSPersistentContainer(name: "YOUR CORE DATA MODEL NAME")이름이 올바른지 확인합니다.향후(이 게시 후 몇 년 후, Apple이 코어 데이터를 다시 변경하는 경우) 또는 이전 버전의 코어 데이터를 사용하는 경우에는 AppDelegate를 주의 깊게 살펴보십시오.아마도 당신의 핵심 데이터를 엉망으로 만드는 뭔가가 있을 것입니다.
xcdatamodeld의 모델 이름이 잘못되었습니다.파인더로 이동하여 텍스트 편집기에서 .xcdata 모델을 엽니다.
다음을 확인합니다.
<plist version="1.0">
<dict>
<key>_XCCurrentVersionName</key>
<string>YOUR CORE DATA MODEL NAME.xcdatamodel</string> <-- Make sure this is correct.
</dict>
</plist>
자세한 내용은 여기: 코어 데이터 모델 파일이 이름 변경 시 로드되지 않습니다.
- 위의 두 가지 방법이 작동하지 않으면 1) 엔티티를 삭제한 다음 동일한 엔티티를 추가하거나 2) xcdata 모델을 삭제한 다음 동일한 데이터 모델을 추가하십시오(그리고 새 xcdata 모델의 이름이 AppDelegate에 있는 이름과 코드의 나머지 이름과 일치하는지 확인).활성 앱으로 이 작업을 수행하지 마십시오. 또는 이 작업을 수행하는 경우 코어 데이터를 올바르게 마이그레이션해야 합니다.
프로젝트에 대한 소스 프로젝트에 대한 이전 참조가 있는 경우 프로젝트를 게시할 때(두 프로젝트에 적용된 모든 변경 사항이 두 프로젝트에 모두 영향을 미칩니다) 여기서 해결책
- 원본 프로젝트에서 프로젝트 게시
- 참조 문제가 발생하는 원본 프로젝트의 원본 폴더 이름을 변경합니다.
- 프로젝트를 공개할 때 모든 것이 빨간색으로 표시됩니다. 프로젝트의 현재 폴더를 선택하십시오.(스택 오버플로의 녹색 체크 표시로 핫이 표시됨)
========================================================================
언급URL : https://stackoverflow.com/questions/8262613/renaming-xcode-4-project-and-the-actual-folder
'programing' 카테고리의 다른 글
| 작은 Azure 저장 블롭 용기(각각 몇 개의 블롭이 있는 용기)가 많은 것이 좋습니까, 아니면 정말 큰 블롭 용기가 많은 것이 좋습니까? (0) | 2023.05.18 |
|---|---|
| Angular에 JavaScript 스크립트 파일을 포함하고 해당 스크립트에서 함수를 호출하려면 어떻게 해야 합니까? (0) | 2023.05.18 |
| PowerShell의 부울 리터럴 (0) | 2023.05.13 |
| Postgresql - 막대형 열의 크기를 더 작은 길이로 변경합니다. (0) | 2023.05.13 |
| DefiningQuery(정의 쿼리)가 있지만 InsertFunction 요소는 없습니다...잘못한 (0) | 2023.05.13 |