🦄

XcodeのGroupとFolder

に公開

はじめに

Xcode16で新しくプロジェクトを作成したところ、デフォルトでFolderが使用されるようになっていることに気づきました。これまでXcode15まではデフォルトでGroupが使用されていたため、この変更について少し調べてみることにしました。

GroupとFolder

見た目の違いとして、フォルダアイコンの色がGroupは灰色、Folderは水色で表示されます。しかし、より重要なのは機能的な違いです。


Group


Folder

Groupには、Xcode内で自由に仮想的なフォルダ構成を作れるというメリットがあります。しかし一方で、ファイルの追加や削除を行うたびにxcodeprojファイルに差分が生じるため、チーム開発時にコンフリクトが発生しやすいという大きなデメリットも抱えています。

Xcode16からデフォルトの設定をFolderに変更したことを考えると、Apple自身もGroupよりもFolderの使用を推奨する方針に転換したと考えられます。

https://developer.apple.com/documentation/xcode/managing-files-and-folders-in-your-xcode-project

GroupからFolderへの変更

Xcode16からConvert to Folderという機能が追加されており、Xcode15以前に作成したGroupのプロジェクトを簡単にFolderに変更することができるようになりました。また、逆にFolderからGroupに変更したい場合はConvert to Group機能が使えます。

変換に失敗すると以下のようなメッセージが表示されます。
Could not convert “Test” to a folder. The folders on disk and groups in Xcode must match exactly to convert a group to a folder.

ディスク上のフォルダとXcode内のGroupを完全に一致している状態にすることが変換の条件になるようです。

ランサーズ株式会社

Discussion