Antworten:
Diese Antwort ist der Höhepunkt verschiedener anderer StackOverflow-Beiträge und -Tutorials im Internet, die an einen Ort gebracht wurden, um später darauf zurückgreifen zu können und allen anderen zu helfen, die möglicherweise mit demselben Problem konfrontiert sind. Alle Antworten werden am Ende gutgeschrieben.
Duplizieren Sie im Finder den Projektordner an den gewünschten Speicherort Ihres neuen Projekts. Benennen Sie den .xcodeproj-Dateinamen oder zugehörige Ordner zu diesem Zeitpunkt nicht um.
Benennen Sie das Projekt in Xcode um. Wählen Sie Ihr Projekt im Navigatorbereich (linker Bereich) aus. Benennen Sie im Bereich Dienstprogramme (rechter Bereich) Ihr Projekt um. Akzeptieren Sie die von Xcode vorgeschlagenen Änderungen.
Benennen Sie in Xcode die Schemata unter "Schemata verwalten" um und benennen Sie auch alle Ziele um, die Sie möglicherweise haben.
Wenn Sie nicht die Standard-Bundle-ID verwenden, die am Ende den aktuellen PRODUCT_NAME enthält (wird also automatisch aktualisiert), ändern Sie Ihre Bundle-ID in die neue, die Sie für Ihr dupliziertes Projekt verwenden.
Nachdem Sie die obigen Schritte ausgeführt haben, sollten Sie ein dupliziertes und umbenanntes Xcode-Projekt haben, das erfolgreich erstellt und kompiliert werden sollte. Ihr Quellcode-Ordner wird jedoch weiterhin so benannt, wie er im ursprünglichen Projekt war. Dies verursacht keine Compilerprobleme, ist jedoch nicht die klarste Dateistruktur für Benutzer, die in SCM usw. navigieren möchten. Gehen Sie folgendermaßen vor, um diesen Ordner umzubenennen, ohne alle Dateilinks zu beschädigen:
Benennen Sie den Quellordner im Finder um. Dadurch wird Ihr Projekt beschädigt, da Xcode die Änderungen nicht automatisch erkennt. Alle Ihre Xcode-Dateilisten verlieren ihre Verknüpfung mit den tatsächlichen Dateien, sodass alle rot werden.
Klicken Sie in Xcode auf den virtuellen Ordner, den Sie umbenannt haben Erforderlicher Schritt, aber es ist schön, wenn die Dateinamen übereinstimmen.
Wählen Sie in Xcode den gerade umbenannten Ordner im Navigationsbereich aus. 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 im Xcode-Navigationsbereich nicht mehr rot angezeigt werden.
Suchen Sie in den Build-Einstellungen Ihres Projekts / Ihrer Ziele nach dem alten Ordnernamen und benennen Sie alle gefundenen Vorkommen manuell um. Normalerweise gibt es eine für die prefix.pch und eine für die info.plist, aber möglicherweise gibt es noch mehr.
Wenn Sie Bibliotheken von Drittanbietern (Testflight / Hockeyapp / etc) verwenden, müssen Sie auch nach 'Library Search Paths' suchen und alle Vorkommen des alten Dateinamens auch hier umbenennen.
Wiederholen Sie diesen Vorgang für alle Unit-Test-Quellcode-Ordner, die Ihr Projekt möglicherweise enthält. Der Vorgang ist identisch.
Dies sollte es Ihnen ermöglichen, ein Xcode-Projekt und alle zugehörigen Dateien zu duplizieren und umzubenennen, ohne Xcode-Dateien manuell bearbeiten zu müssen.
Vielen Dank an Nick Lockwood und Pauly Glott für die getrennten Antworten auf dieses Problem.
*.xcodeproj/project.pbxproj
Datei, die den ursprünglichen Ordnerpfad enthielten. Insbesondere schlug der Build fehl, weil im ursprünglichen Ordner ständig nach einer info.plist gesucht wurde.
Ich poste dies, da ich beim Umbenennen eines Projekts in immer Probleme hatte XCode
.
Das Umbenennen des Projekts ist gut und einfach, aber dies benennt den Quellordner nicht um. Hier ist eine Schritt für Schritt, was ich getan habe, was in Xcode 4 und 5 dank der folgenden Links großartig funktioniert hat.
REF-Links:
Projekt umbenennen.
Benennen Sie den Quellordner und andere Dateien um.
1- Sichern Sie Ihr Projekt.
Wenn Sie git verwenden, übernehmen Sie alle Änderungen, erstellen Sie eine Kopie des gesamten Projektordners und sichern Sie in der Zeitmaschine, bevor Sie Änderungen vornehmen (dieser Schritt ist nicht erforderlich, wird jedoch dringend empfohlen).
2- Öffnen Sie Ihr Projekt.
3- Doppelklicken Sie langsam oder drücken Sie die Eingabetaste für den Projektnamen (blaues oberes Symbol) und benennen Sie ihn nach Belieben um.
HINWEIS: Nachdem Sie das Projekt umbenannt und die Eingabetaste gedrückt haben, wird empfohlen, alle projektnamenbezogenen Einträge automatisch zu ändern und einige davon abzuwählen, 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ü direkt neben der Schaltfläche Stopp und wählen Sie Schemata verwalten.
b) Klicken Sie einfach langsam oder drücken Sie die Eingabetaste für das alte Namensschema und benennen Sie es nach Belieben um.
c) Klicken Sie auf OK.
5 - Erstellen und ausführen, um sicherzustellen, dass es funktioniert.
HINWEISE: Zu diesem Zeitpunkt sollten alle wichtigen Projektdateien mit Ausnahme der Kommentare in den Klassen, die beim Erstellen des Projekts erstellt wurden, und des Quellordners 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 Maustaste auf die Projektpaketdatei .xcodeproj
und wählen Sie im Kontextmenü die Option „Paketinhalt anzeigen“. Öffnen Sie die .pbxproj-Datei mit einem beliebigen Texteditor.
9- Suchen und ersetzen Sie alle Vorkommen des ursprünglichen Ordnernamens durch den neuen Ordnernamen.
10- Speichern Sie die Datei.
11- Öffnen Sie das XCode-Projekt und testen Sie es.
12- Fertig.
Es gibt ein Tool zum Umbenennen von Projekten in Xcode. Ich habe es nicht genug ausprobiert, um es zu kommentieren. https://github.com/appculture/xcode-project-renamer
Ab XCode 7 ist dies viel einfacher geworden.
Apple hat den Prozess 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 verwende dieses Skript , nachdem ich umbenennen mein iOS - Projekt. Es ist hilfreich, den Namen des Verzeichnisses zu ändern und die Namen synchron zu machen.
HINWEIS: Sie müssen den Namen des Schemas manuell ändern.
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 Blog-Beitrag von dem scheinbar ursprünglichen Autor des Skripts gefunden: http://mohrt.blogspot.it/2009/01/renaming-xcode-project-from-command.html , wo Sie können das Skript herunterladen . Ich habe es ausprobiert und es so vom Terminal aus ausgeführt
sh renameXcodeProject.sh <name-of-existing-folder> <name-of-folder-to-create>
funktioniert gut.
Zusätzliche Informationen finden Sie beim Öffnen der Datei mit einem Texteditor. hoffentlich hilft das
Ich benutze Xcode 6+ und mache einfach:
*.xcodeproj or *.xcworkspace
Hier ist fertig, aber Name des Fensters Xcode und *.xcodeproj or *.xcworkspace
noch <old-name>
. Dann mach ich:
pop install
<new name>.xcworkspace
Noch etwas zu versuchen!
Als ich alle meine Dateien kopierte, das Projekt öffnete und umbenannte, änderte sich bis auf das Testziel alles in meinen neuen Projektnamen ! Ich habe einen Linker-Fehler erhalten, der besagt, dass mir eine Datei mit dem Namen "myOldProjectname.app" fehlt. Folgendes hat das Problem behoben:
Klicken Sie auf Ihre Projekteinstellungen und wählen Sie Ihr Testziel aus
Klicken Sie auf Build-Einstellungen und suchen Sie nach "Testhost"
Überprüfen Sie diese beiden Dateipfade. Möglicherweise zeigen diese beiden Pfade immer noch auf Ihren alten Projektnamen.
Hoffentlich hilft das!
Wenn Sie nach dem Kopieren Ihres Projekts Probleme mit Abstürzen des Storyboards haben, gehen Sie zu Main.storyboard unter Identity Inspector.
Überprüfen Sie als Nächstes, ob Ihr aktuelles Modul das richtige umbenannte Modul ist und nicht das alte.
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:
.git
und.DS_Store