Saya ingin dapat menduplikasi seluruh proyek Xcode, mengganti nama proyek dan file terkait tanpa Xcode menjadi mental, dan tanpa harus mengimpor kembali secara manual semua file ke proyek.
sumber
Saya ingin dapat menduplikasi seluruh proyek Xcode, mengganti nama proyek dan file terkait tanpa Xcode menjadi mental, dan tanpa harus mengimpor kembali secara manual semua file ke proyek.
Jawaban ini adalah puncak dari berbagai posting dan tutorial StackOverflow lainnya di internet yang dibawa ke satu tempat untuk referensi saya di masa depan, dan untuk membantu siapa pun yang mungkin menghadapi masalah yang sama. Semua kredit diberikan untuk jawaban lain di bagian akhir.
Di Finder, duplikat folder proyek ke lokasi yang diinginkan dari proyek baru Anda. Jangan mengganti nama nama file .xcodeproj atau folder terkait pada tahap ini.
Dalam Xcode, ganti nama proyek. Pilih proyek Anda dari panel navigator (panel kiri). Di panel Utilities (panel kanan) ganti nama proyek Anda, Terima perubahan yang diusulkan Xcode.
Di Xcode, ganti nama skema di "Kelola Skema", juga ganti nama target yang mungkin Anda miliki.
Jika Anda tidak menggunakan Bundle Identifier default yang berisi PRODUCT_NAME saat ini di bagian akhir (jadi akan diperbarui secara otomatis), maka ubah Bundle Identifier Anda dengan yang baru yang akan Anda gunakan untuk proyek duplikat Anda.
Jadi setelah mengikuti langkah-langkah di atas Anda harus memiliki proyek Xcode digandakan dan diganti namanya yang harus membangun dan mengkompilasi berhasil, namun folder kode sumber Anda akan tetap dinamai seperti di proyek asli. Ini tidak menyebabkan masalah kompilator, tetapi itu bukan struktur file yang paling jelas bagi orang untuk bernavigasi di SCM, dll. Untuk mengganti nama folder ini tanpa memutus semua tautan file Anda, ikuti langkah-langkah ini:
Di Finder, ganti nama folder sumber. Ini akan merusak proyek Anda, karena Xcode tidak akan secara otomatis mendeteksi perubahan. Semua daftar file xcode Anda akan kehilangan tautannya dengan file yang sebenarnya, jadi semuanya akan berubah menjadi merah.
Dalam Xcode, klik pada folder virtual yang Anda beri nama baru (Ini kemungkinan akan tepat di atas, tepat di bawah proyek .xcodeproject Anda yang sebenarnya) Ubah nama ini untuk mencocokkan nama di Finder, ini tidak akan memperbaiki apa pun dan benar-benar bukan diperlukan langkah tetapi senang memiliki nama file yang cocok.
Di Xcode, Pilih folder yang baru saja Anda ganti namanya di panel navigasi. Kemudian di panel Utilities (paling kanan) klik ikon yang terlihat seperti folder abu-abu gelap, tepat di bawah menu drop down 'Lokasi'. Dari sini, navigasikan ke folder Anda yang telah diubah namanya di finder dan klik 'Pilih'. Ini secara otomatis akan mengaitkan kembali semua file Anda, dan mereka seharusnya tidak lagi tampak merah dalam panel navigasi Xcode.
Dalam pengaturan membangun proyek / target Anda, cari nama folder lama dan ubah nama secara manual setiap kejadian yang Anda temukan. Biasanya ada satu untuk prefix.pch dan satu untuk info.plist, tetapi mungkin ada lebih banyak.
Jika Anda menggunakan pustaka pihak ketiga (Testflight / Hockeyapp / etc), Anda juga perlu mencari 'Path Pencarian Perpustakaan' dan mengganti nama kemunculan nama file lama di sini juga.
Ulangi proses ini untuk setiap folder kode sumber tes unit yang berisi proyek Anda, prosesnya identik.
Ini akan memungkinkan Anda untuk menduplikasi & mengubah nama proyek xcode dan semua file terkait tanpa harus mengedit file xcode secara manual, dan berisiko mengacaukan semuanya.
Terima kasih banyak kepada Nick Lockwood , dan Pauly Glott karena memberikan jawaban terpisah untuk masalah ini.
*.xcodeproj/project.pbxproj
file yang berisi jalur folder asli. Secara khusus, build gagal karena terus mencari info.plist di folder asli.Saya memposting ini karena saya selalu kesulitan ketika mengganti nama proyek
XCode
.Mengganti nama proyek itu bagus dan sederhana tetapi ini tidak mengganti nama folder sumber. Ini adalah langkah demi langkah dari apa yang telah saya lakukan yang bekerja sangat baik di Xcode 4 dan 5 berkat tautan di bawah ini.
Tautan REF:
Ganti nama Project.
Ganti nama Folder Sumber dan file lainnya.
1- Cadangkan proyek Anda.
Jika Anda menggunakan git, lakukan perubahan apa pun, buat salinan dari seluruh folder proyek dan cadangan dalam mesin waktu sebelum membuat perubahan apa pun (langkah ini tidak diperlukan, tetapi saya sangat disarankan).
2- Buka proyek Anda.
3- Klik dua kali pelan atau tekan enter pada nama Project (ikon biru atas) dan ganti nama menjadi apa pun yang Anda suka.
4- Ganti nama Skema
a) Klik menu tepat di sebelah tombol berhenti dan pilih Kelola Skema.
b) Klik satu kali dengan lambat atau tekan enter pada skema nama lama dan ganti namanya menjadi apa pun yang Anda suka.
c) Klik ok.
5 - Bangun dan jalankan untuk memastikannya berhasil.
6- Tutup proyek.
7- Ganti nama folder utama dan sumber.
8- Klik kanan
.xcodeproj
file bundel proyek dan pilih "Tampilkan Isi Paket" dari menu konteks. Buka file .pbxproj dengan editor teks apa pun.9- Cari dan gantikan kemunculan nama folder asli dengan nama folder baru.
10- Simpan file.
11 - Buka proyek XCode, ujilah.
12 - Selesai.
EDIT 10/11/19:
Ada alat untuk mengganti nama proyek di Xcode. Saya belum cukup mencobanya untuk mengomentarinya. https://github.com/appculture/xcode-project-renamer
sumber
Pada XCode 7 ini menjadi lebih mudah.
Apple telah mendokumentasikan proses di situs mereka: https://developer.apple.com/library/ios/recipes/xcode_help-project_editor/RenamingaProject/RenamingaProject.html
Pembaruan: tautan XCode 8: http://help.apple.com/xcode/mac/8.0/#/dev3db3afe4f
sumber
Saya menggunakan skrip ini setelah saya mengganti nama Proyek iOS saya. Ini membantu untuk mengubah nama direktori dan membuat nama dalam sinkronisasi.
CATATAN: Anda perlu mengubah nama skema secara manual.
sumber
Dalam kode contoh untuk buku "OpenCV Instan untuk iOS" Saya telah menemukan skrip bash yang menyalin proyek dari folder ke folder lain.
Melakukan sedikit riset, saya menemukan posting blog dari apa yang tampaknya menjadi penulis asli skrip: http://mohrt.blogspot.it/2009/01/renaming-xcode-project-from-command.html , di mana Anda dapat mengunduh skripnya . Saya mencobanya dan menjalankannya dari terminal seperti ini
bekerja dengan baik.
Info tambahan dapat ditemukan membuka file dengan editor teks. Semoga itu bisa membantu
sumber
Saya menggunakan Xcode 6+ dan saya hanya melakukan:
*.xcodeproj or *.xcworkspace
Di sini dilakukan, tetapi nama jendela Xcode dan
*.xcodeproj or *.xcworkspace
masih<old-name>
. Maka saya lakukan:pop install
<new name>.xcworkspace
sumber
Satu hal lagi untuk dicoba!
Ketika saya menyalin semua file saya, membuka proyek, dan menamainya, semuanya berubah menjadi nama proyek baru saya kecuali untuk target pengujian! Saya mendapat kesalahan tautan yang mengatakan bahwa saya kehilangan file bernama "myOldProjectname.app". Inilah yang diperbaiki:
Klik pada pengaturan proyek Anda dan pilih target pengujian Anda
Klik pada pengaturan bangunan dan cari "host uji"
Periksa 2 jalur file tersebut. Kemungkinan kedua jalur tersebut masih menunjuk pada nama proyek lama Anda.
Semoga itu bisa membantu!
sumber
Untuk orang lain yang memiliki masalah dengan storyboard crash setelah menyalin proyek Anda, kunjungi Main.storyboard di bawah Identity Inspector.
Selanjutnya, periksa apakah modul Anda saat ini adalah modul yang diubah namanya dan bukan yang lama.
sumber
Saya menggunakan skrip BASH sederhana untuk mengganti nama.
Pemakaian:
./rename.sh oldName newName
Catatan:
.git
dan.DS_Store
sumber