Dupliziere und benenne Xcode-Projekt und zugehörige Ordner um

Ich möchte in der Lage sein, ein komplettes Xcode-Projekt zu duplizieren, das Projekt und die zugehörigen Dateien umzubenennen, ohne dass Xcode geistig geht, und ohne alle Dateien manuell in das Projekt neu importieren zu müssen.

Diese Antwort ist der Höhepunkt verschiedener anderer StackOverflow-Posts und -Tutorials im Internet, die an einen Ort für meine zukünftige Referenz gebracht wurden, und um anderen zu helfen, die sich mit dem gleichen Problem konfrontiert sehen. Alle Credits werden am Ende für andere Antworten vergeben.

Duplizieren eines Xcode-Projekts

  • Kopieren Sie im Finder den Projektordner an den gewünschten Speicherort Ihres neuen Projekts. Benennen Sie zu diesem Zeitpunkt den Dateinamen .xcodeproj oder die zugehörigen Ordner nicht um.

  • Benennen Sie das Projekt in Xcode um. Wählen Sie Ihr Projekt im Navigationsbereich (linker Bereich). Benennen Sie Ihr Projekt im Bereich Dienstprogramme (rechter Bereich) um. Akzeptieren Sie die von Xcode vorgeschlagenen Änderungen.

  • Benennen Sie in Xcode die Schemas in “Manage Schemes” um, benennen Sie auch alle Ziele um, die Sie möglicherweise haben.

  • Wenn Sie nicht den Standard-Paket-Identifikator verwenden, der am Ende das aktuelle PRODUCT_NAME enthält (also automatisch aktualisiert wird), dann ändern Sie Ihren Paket-Identifikator auf den neuen, den Sie für Ihr dupliziertes Projekt verwenden werden.

Umbenennen des Quellordners

Nachdem Sie die obigen Schritte ausgeführt haben, sollten Sie ein doppeltes und umbenanntes Xcode-Projekt haben, das erfolgreich kompiliert und kompiliert werden sollte. Ihr Quellcode-Ordner wird jedoch immer noch so benannt, wie er im ursprünglichen Projekt war. Dies verursacht keine Compilerprobleme, aber es ist nicht die klarste Dateistruktur für Personen, die in SCM usw. navigieren. Gehen Sie wie folgt vor, um diesen Ordner umzubenennen, ohne alle Dateiverknüpfungen zu unterbrechen:

  • Benennen Sie den Quellordner im Finder um. Dadurch wird Ihr Projekt unterbrochen, da Xcode die Änderungen nicht automatisch erkennt. Alle Ihre xcode-Dateilisten verlieren ihre Verknüpfungen mit den tatsächlichen Dateien, also werden alle rot.

  • Klicken Sie in Xcode auf den virtuellen Ordner, den Sie umbenannt haben (Dieser befindet sich wahrscheinlich ganz oben, direkt unter Ihrem eigentlichen .xcodeproject). Benennen Sie ihn um, damit er mit dem Namen im Finder übereinstimmt. Dies wird nichts beheben und ist strikt nicht erforderlicher Schritt, aber es ist schön, dass die Dateinamen übereinstimmen.

  • Wählen Sie in Xcode den Ordner aus, den Sie gerade im Navigationsbereich umbenannt haben. Klicken Sie dann im Bereich “Dienstprogramme” (ganz rechts) auf das Symbol, das wie ein dunkelgrauer Ordner aussieht, direkt unter dem Dropdown-Menü “Standort”. Navigieren Sie von hier aus zu Ihrem umbenannten Ordner im Finder und klicken Sie auf “Auswählen”. Dadurch werden alle Ihre Dateien automatisch neu zugeordnet und sie sollten nicht mehr im Xcode-Navigationsbereich rot angezeigt werden.

Symbol zum Klicken

  • Suchen Sie in Ihren Projekt- / Zielerstellungseinstellungen nach dem alten Ordnernamen und benennen Sie alle gefundenen Vorkommen manuell um. Normalerweise gibt es einen für die Präfix.pch und einen für die info.plist, aber es kann mehr geben.

  • Wenn Sie Bibliotheken von Drittanbietern verwenden (Testflight / Hockeyapp / etc), müssen Sie auch nach “Library Search Paths” suchen und auch hier alle Vorkommen des alten Dateinamens umbenennen.

  • Wiederholen Sie diesen Vorgang für alle Unit-Test-Quellcodeordner, die Ihr Projekt enthalten kann, der process ist identisch.

Dies sollte es Ihnen ermöglichen, ein xcode-Projekt und alle zugehörigen Dateien zu duplizieren und umzubenennen, ohne dass Sie irgendwelche xcode-Dateien manuell bearbeiten müssen, und riskieren, Dinge durcheinander zu bringen.

Kredite

Vielen Dank an Nick Lockwood und Pauly Glott für die separaten Antworten auf dieses Problem.

  • Duplizieren eines XCode 4-Projekts
  • Umbenennen des xcode 4-Projekts und des eigentlichen Ordners

Ich poste dies, seit ich immer gekämpft habe, wenn ich ein Projekt in XCode .

Das Umbenennen des Projekts ist gut und einfach, aber dies benennt den Quellordner nicht um. Hier ist eine Schritt für Schritt von dem, was ich getan habe, das in Xcode 4 und 5 dank der folgenden Links super funktionierte.

REF-Links:
Benennen Sie das Projekt um.
Benennen Sie den Quellordner und andere Dateien um.

1- Sichern Sie Ihr Projekt.

Wenn Sie git verwenden, legen Sie alle Änderungen fest, erstellen Sie eine Kopie des gesamten Projektordners und sichern Sie sie in Time Machine, bevor Sie Änderungen vornehmen (dieser Schritt ist nicht erforderlich, wird aber dringend empfohlen).

2- Öffnen Sie Ihr Projekt.

3- Langsamer Doppelklick oder drücken Sie die Eingabetaste für den Projektnamen (blaues Top-Symbol) und benennen Sie ihn um, wie Sie möchten.

HINWEIS: Nachdem Sie das Projekt umbenannt und die Eingabetaste gedrückt haben, wird vorgeschlagen, alle projektnamenbezogenen Einträge automatisch zu ändern und es Ihnen zu ermöglichen, einige der Einträge zu entfernen, wenn Sie möchten. Wählen Sie alle aus und klicken Sie auf OK.

4- Benennen Sie das Schema um

a) Klicken Sie auf das Menü rechts neben der Stopp-Schaltfläche und wählen Sie Schemata verwalten.

b) Einmaliges langsames Klicken oder Drücken der Eingabetaste auf das alte Namensschema und benennen Sie es um, was auch immer Sie mögen.

c) Klicken Sie auf OK.

5 – Build and run, um sicherzustellen, dass es funktioniert.

HINWEIS: Zu diesem Zeitpunkt sollten alle wichtigen Projektdateien mit Ausnahme der Kommentare in den classn, die beim Erstellen des Projekts erstellt wurden, und des Quellordners nicht umbenannt werden. Als nächstes werden wir den Ordner im Dateisystem umbenennen.

6- Schließen Sie das Projekt.

7- Benennen Sie den Haupt- und den Quellordner um.

8- Klicken Sie mit der rechten .xcodeproj das Projektpaket .xcodeproj und wählen Sie “Paketinhalt .xcodeproj ” aus dem Kontextmenü. Öffnen Sie die Datei .pbxproj mit einem beliebigen Texteditor.

9- Suchen und ersetzen Sie jedes Vorkommen des ursprünglichen Ordnernamens durch den neuen Ordnernamen.

10- Speichern Sie die Datei.

11 – Öffnen Sie das XCode-Projekt, testen Sie es.

12- Fertig.

Ab XCode 7 ist dies viel einfacher geworden.

Apple hat den process auf seiner Website dokumentiert: https://developer.apple.com/library/ios/recipes/xcode_help-project_editor/RenamingaProject/RenamingaProject.html

Update: XCode 8 Link: http://help.apple.com/xcode/mac/8.0/#/dev3db3afe4f

Ich benutze Xcode 6+ und ich mache nur:

  • Kopieren Sie alle Dateien in Projektordnern in neue Ordner (mit neuem Namen).
  • Öffnen Sie *.xcodeproj or *.xcworkspace
  • Ändern Sie den Namen des Projekts.
  • Klicken Sie auf Schema und löschen Sie das aktuelle Schema und fügen Sie ein neues hinzu.

Hier ist getan, aber Name des Fensters Xcode und *.xcodeproj or *.xcworkspace immer noch . Dann mach ich:

  • pop install
  • Öffnen Sie .xcworkspace

Noch eine Sache zu versuchen!

Wenn ich alle meine Dateien kopiert, das Projekt geöffnet und es umbenannt habe, hat sich alles in meinen neuen Projektnamen geändert, mit Ausnahme des Testziels! Ich habe einen Linkererrors bekommen, der besagt, dass ich eine Datei namens “myOldProjectname.app” vermisse. Hier ist, was es behoben hat:

  1. Klicken Sie auf Ihre Projekteinstellungen und wählen Sie Ihr Testziel Bildbeschreibung hier eingeben

  2. Klicke auf Build Einstellungen und suche nach “test host” Bildbeschreibung hier eingeben

  3. Überprüfen Sie diese 2 Dateipfade. Wahrscheinlich zeigen diese 2 Pfade immer noch auf Ihren alten Projektnamen. Bildbeschreibung hier eingeben

Ich hoffe, das hilft!

Ich verwende dieses Skript, nachdem ich mein iOS-Projekt umbenannt habe. Es hilft, den Namen des Verzeichnisses zu ändern und die Namen zu synchronisieren.

http://github.com/ytbryan/rename

HINWEIS: Sie müssen den Namen des Schemas manuell ändern.

Für alle anderen, die nach dem Kopieren Ihres Projekts Probleme mit Storyboardabstürzen haben, gehen Sie zu Main.storyboard unter Identity Inspector.

Als nächstes überprüfen Sie, ob Ihr aktuelles Modul das richtige umbenannte Modul ist und nicht das alte.

Im Beispielcode für das Buch “Instant OpenCV für iOS” habe ich ein Bash-Skript gefunden, das ein Projekt von einem Ordner in einen anderen kopiert.
Nach ein wenig Recherche habe ich einen Blogbeitrag von dem gefunden, der der ursprüngliche Autor des Skripts zu sein scheint: http://mohrt.blogspot.it/2009/01/renaming-xcode-project-from-command.html , wo Sie können das Skript herunterladen. Ich habe es versucht und es vom Terminal aus laufen lassen

  sh renameXcodeProject.sh   

funktioniert gut.
Zusätzliche Informationen finden Sie in der Datei mit einem Texteditor. Ich hoffe, das hilft

Ich verwende ein einfaches BASH-Skript zum Umbenennen.

Verwendung: ./rename.sh oldName newName

 #!/bin/sh OLDNAME=$1 NEWNAME=$2 export LC_CTYPE=C export LANG=C find . -type f ! -path ".*/.*" -exec sed -i '' -e "s/${OLDNAME}/${NEWNAME}/g" {} + mv "${OLDNAME}.xcodeproj" "${NEWNAME}.xcodeproj" mv "${OLDNAME}" "${NEWNAME}" 

Anmerkungen:

  1. Dieses Skript ignoriert alle Dateien wie .DS_Store und .DS_Store
  2. functioniert nicht, wenn alter Name / neuer Name Leerzeichen enthält
  3. functioniert möglicherweise nicht, wenn Sie Pods verwenden (nicht getestet)
  4. Der Schemaname wird nicht geändert (sowieso wird das Projekt normal ausgeführt und kompiliert)