XCodeのワークスペース内のプロジェクトコピー
ちょっとしたカスタマイズを入れた別バージョンを作るため、ふと「同一workspace内のprojectのコピー」を作りたくなった。
そこで、MyWork.xcproject下のprojAからprojBを作成するまでの手順を記録してみる。
1. Finder にて
- フォルダ projA をコピーし、projB にリネーム
- projB 下のフォルダ projA を projB にリネーム
- projB 下のファイル projA.xcodeproj を projB.xcodeproj にリネーム
2. Terminal にて
- projB に移動
- ファイル内に含まれる文字列 'projA' を sed で 'projB' に置換
$> grep -r "projA" * (文字列 'projA' が複数のファイルに含まれていることを確認) $> sed -i "" 's/projA/projB/g' projB/* $> sed -i "" 's/projA/projB/g' projB.xcodeproj/* $> sed -i "" 's/projA/projB/g' projB.xcodeproj/xcuserdata/<user名>.xcuserdatad/xcschemes/* $> grep -r "projA" * (文字列 'projA' がどのファイルにも含まれていないことを確認)
3. XCode にて
- MyWork.xcproject を開いて XCode を起動
- 一番左のペインでメニューを開いて 'Add Files to "MyWork"...' を選択し、先ほど作成した projB.xcodeproj を追加する
- 左上の scheme ('Run', 'Stop' の右側) をクリックして 'Manage Schemes...' を選択する
- container 列が 'projB project' となっている行を探し、そこの scheme 列をシングルクリックで編集。projA を projB にリネームして OK
- 一番左のペインで projB を選択し、プロジェクトの設定画面を開く。バージョンやアプリの表示名などを適宜修正
手順1.2のフォルダ名の変更をしなくてよい場合は、1.1の直後にprojB/projA.xcodeproj を開いてプロジェクト名の変更 (右ペインの Identity > Project Name を変更) をすると、適宜XCodeが自動で変換をしてくれる。その後手順3に飛べばよい。
参考URL: