developer tip

Xcode 그룹을 파일 시스템 폴더로 만드는 워크 플로

copycodes 2020. 11. 26. 18:44
반응형

Xcode 그룹을 파일 시스템 폴더로 만드는 워크 플로


Xcode 4 프로젝트 탐색기 창에서 클래스를 그룹으로 구성하는 것을 좋아합니다. 또한 터미널을 통해 GIT 버전 관리를 사용하는데, 이는 Xcode 4 통합보다 더 잘 작동합니다. 나에게 Xcode에서 만든 그룹이 내 파일 시스템의 실제 폴더와 일치 할 때 가장 의미가 있습니다.

그러나 Xcode는 파일 (예 : Objective-C .h / .m 파일)이 파일 시스템의 어디에 있는지 신경 쓰지 않는 것 같습니다. 그리고 그룹 ( Option+Command+N) 을 추가 할 때마다 그 안에 넣은 모든 파일에 대해 공유 할 것입니다. 나머지 하드 드라이브와 동일한 위치.

이상한 점은 먼저 하드 드라이브에 폴더를 만든 다음 Xcode로 드래그하면 파일 시스템에 자체 위치가있는 그룹이 생성된다는 것입니다. 거기에서 생성하는 모든 파일은 디스크의 폴더에 생성됩니다. 나는 그것을 좋아하지만 Xcode가 나를 위해 그것을 해준다면 더 좋아할 것 Option+Command+N입니다. 생성하려는 모든 그룹에 대해 Finder로 전환 한 다음 프로젝트 탐색기의 올바른 위치로 다시 드래그하는 워크 플로우는 어리석은 일입니다.

설정으로 해결 될 것 같은 느낌이 들지만 찾을 수 없습니다! 더 좋은 방법이 있습니까?

업데이트 : 폴더를 Xcode로 드래그하면 "폴더 참조"를 선택할 수있는 대화창이 나타납니다. 유망 해 보이지만 Xcode 4는 파일을 클래스로 받아들이지 않고 파일을 찾을 수 없다고 계속 말합니다. 아마도 여기 어딘가에 답이 있을지 모르지만 여전히 찾을 수 없습니다.

또 다른 업데이트 : 기본 편집기 환경을 Xcode에서 AppCode로 변경했습니다. 후자는 Xcode와 100 % 호환성을 유지하면서 실제로 프로젝트 그룹을 지원하는 폴더 생성을 지원합니다. AppCode 직원들은 그들이 무엇을하는지 확실히 알고 있습니다.


최신 정보

다음은 Xcode 9 이상에 대한 설명입니다.

Xcode 9부터 Xcode는 프로젝트에서 그룹을 만들 때 자동으로 파일 시스템 폴더를 만들 수 있습니다.

당신은 마우스 오른쪽 버튼으로 클릭 (또는 Control 키를 누른 상태에서 클릭) 프로젝트 탐색기의 컨텍스트 메뉴는 "새 그룹"메뉴 항목을 포함하는 경우 중 하나 "새로운 그룹 폴더와"메뉴 항목 또는 "새로운 그룹 폴더없이"메뉴 항목을 선택합니다.

  • Xcode가 "새 그룹"및 "폴더가있는 새 그룹"을 제공하는 경우 "새 그룹"은 폴더없이 그룹을 만듭니다.

  • Xcode가 "새 그룹"및 "폴더없는 새 그룹"을 제공하는 경우 "새 그룹"은 폴더가있는 그룹을 만듭니다.

즉, "새 그룹"은 폴더 생성과 관련하여 항상 다른 (명시 적) 메뉴 항목과 반대 역할을합니다.

그룹의 이름을 바꾸고 해당 그룹에 동일한 이름의 해당 폴더가있는 경우 Xcode 9는 폴더 이름도 변경합니다.

Xcode 9에서 파일을 한 그룹에서 다른 그룹으로 드래그하고 그룹에 다른 폴더가있는 경우 Xcode 9는 새 그룹의 폴더가 그룹과 동일한 이름인지 여부에 관계없이 파일을 새 그룹의 폴더로 이동합니다.

Xcode 9에서이 동작을 원하지 않는 경우 명령 줄에서 문서화되지 않은 설정을 설정할 수 있습니다.

defaults write com.apple.dt.Xcode IDEDisableStructureEditingCoordinator -bool YES

"폴더가있는 새 그룹"및 "폴더가없는 새 그룹"에 대한 세부 정보를 추론 할 수 없음

Xcode가 "새 그룹"및 "폴더가있는 새 그룹"또는 "새 그룹"및 "폴더없는 새 그룹"을 표시할지 여부를 결정하는 방법은 전혀 명확하지 않습니다. WWDC 2018의 Apple 엔지니어 (그의 이름은 Paul이라고 생각합니다)가 Xcode 소스 코드를보고 저에게 설명했습니다.

  • Xcode는 클릭 한 그룹을 파악합니다 (또는 그룹을 클릭하지 않은 경우 클릭 한 항목이 포함 된 그룹을 파악합니다).
  • Xcode는 클릭 한 그룹 하위 그룹 (및 링크 된 폴더)을 확인합니다.
  • 대부분의 하위 그룹에 자체 폴더가있는 경우 Xcode는 새 그룹에도 자체 폴더를 갖기를 원한다고 가정합니다. 따라서 Xcode는 "새 그룹"(폴더를 생성 함)과 "폴더없는 새 그룹"을 표시합니다.
  • 대부분의 하위 그룹에 자체 폴더 없는 경우 Xcode는 새 그룹에도 자체 폴더가 없는 것으로 간주합니다. 따라서 Xcode는 "새 그룹"( 폴더를 만들지 않음 )과 "폴더가있는 새 그룹"을 표시합니다.
  • 정확히 절반의 하위 그룹에 자체 폴더가있는 경우 Xcode가 어떻게 동점을 깨뜨리는 지 모르겠습니다. 지금 당장 테스트하고 싶지는 않습니다.
  • 클릭 한 그룹에 하위 그룹이없는 경우 Xcode는 클릭 한 그룹 자체에 자체 폴더가 있는지 여부에 따라 표시 할 항목을 결정합니다.

기본적으로 Xcode는 향후 형제가 자신의 폴더를 가지고 있는지 여부에 따라 새 그룹에 자체 폴더가 있어야하는지 여부를 추측합니다.

실물

당신은 할 수 있습니다 직접 엑스 코드에서, 자신의 폴더와, 새 그룹을 만들 수 있지만, 모든 명백한에서이 아니다.

'New Group'을 선택하는 대신 'Add Files to "<Project>"'를 선택합니다. 그런 다음 파일 선택기 대화 상자에서 새 폴더 버튼을 클릭하거나 Command-Shift-N을 누르고 새 폴더 / 그룹의 이름을 입력합니다. 그런 다음 "추가 된 폴더에 대한 그룹 만들기"가 선택되어 있는지 확인하고 추가를 클릭하거나 Return 키를 누릅니다.

자체 폴더가있는 그룹 추가

Xcode는 여전히 그렇게하지 않기 때문에 기존 파일을 새 그룹으로 이동해야하는 경우에는 많이 절약되지 않습니다.

그러나 새 파일을 보관할 새 그룹을 만드는 경우 몇 단계를 절약 할 수 있습니다.


폴더를 동기화하기에는 너무 게으른 사람들을 위해 GitHub에 멋진 도구가 있습니다 .

Synx는 Xcode 그룹과 일치하도록 Xcode 프로젝트 폴더를 재구성하는 명령 줄 도구입니다.

여기에 이미지 설명 입력

이것이 누군가에게 도움이되기를 바랍니다.


여기 andyvn22의 답변을 살펴보십시오.

의역하기 :

  • Xcode 3 : Xcode 에서 그룹을 만들 때마다 즉시 정보를 얻고 이름 바로 아래에있는 "Path :"설정을 확인합니다. "선택 ..."을 클릭하고 동일한 이름의 새 폴더로 설정합니다.
  • Xcode 4 : Xcode 에서 그룹을 만들 때마다 즉시 그룹을 선택하고 오른쪽 사이드 바를 엽니 다. 이름 바로 아래에 "경로 :"설정이 있습니다. "없음"(창에있는 파일이란 무엇입니까?) 옆의 아이콘을 클릭하고 동일한 이름의 새 폴더로 설정합니다.

그런 다음 디스크의 기존 파일을 새 폴더로 수동으로 이동해야합니다.

내 Xcode4 프로젝트에서 이것을 시도했지만 매력처럼 작동합니다.

참고 URL : https://stackoverflow.com/questions/6402661/workflow-to-create-xcode-groups-as-file-system-folders

반응형