Je sais comment renommer le projet dans Xcode 4, mais comment renommer le dossier source? Le fait est que renommer le projet dans Xcode ne le fait que dans Xcode (bien que ce soit une progression par rapport au précédent) - mais pourquoi Xcode ne renomme pas le dossier dans le système de fichiers que je ne connais pas.
Vous pouvez le faire depuis Xcode sans avoir à éditer le fichier pbxproj à la main dans un éditeur de texte!
Voici comment:
Renommez votre dossier source dans le Finder. Cela rompra le projet initialement car Xcode ne détecte pas automatiquement le moment où les dossiers réels sur lesquels pointent les dossiers de projets virtuels (jaunes) sont modifiés, de sorte que tous les fichiers de ce dossier deviennent rouges dans Xcode. Ne vous inquiétez pas pour ça, nous allons le réparer à l'étape 3.
Dans Xcode, cliquez sur le dossier virtuel (maintenant brisé) dans la barre latérale gauche et renommez-le afin qu'il corresponde au nom affiché dans le Finder (vous pouvez en fait l'appeler comme vous voulez ou ne pas le renommer du tout, mais ce serait insensé ). Cela ne résoudra pas les fichiers rouges dans le dossier, mais ce n'est pas grave.
Dans la barre latérale droite de Xcode, cliquez sur l'icône indiquée dans la capture d'écran ci-dessous pour ouvrir une boîte de dialogue de fichier. Sélectionnez le dossier que vous avez renommé précédemment. Cela associera à nouveau le dossier virtuel au dossier réel sur le disque et corrigera automatiquement les liens vers tous les fichiers qu'il contient.
Dans vos paramètres de construction, recherchez l'ancien nom du dossier et renommez manuellement les occurrences trouvées. Il y aura généralement deux d'entre eux, oldfolder/prefix.pch et oldfolder/info.plist, mais il peut y en avoir d'autres.
Terminé!
EDIT: cette option existe toujours dans Xcode 5, mais elle est utilement masquée par défaut. Pour l'afficher, cliquez sur l'en-tête "Identité et type" dans l'inspecteur situé au-dessus du panneau "Paramètres de texte" pour le développer.
Je l'ai fait des dizaines de fois:
.pbxproj
dans le groupe de projets (menu contextuel "Afficher le contenu du package") avec n’importe quel éditeur de texte. Tâche: Renommez "Play" en "Play2" à la fois dans Xcode et dans le Finder
Change ça:
Pour ça:
PAS:
// Avant toute chose, veuillez sauvegarder le projet dans le Finder!
// Toutes les étapes ci-dessus sont simples et sans effets secondaires//// Maintenant vient la partie la plus délicate: renommer le dossier interne (colonne du milieu de l'image) dans le Finder (celui du même niveau que. xcodeproj)
Voici comment renommer un projet efficacement dans XCode4 (Y COMPRIS LE DOSSIER DE FICHIERS):
Tout d'abord, ne renommez pas un projet Xcode !!!
Si vous devez le faire, ce qui se passe en dessous pourrait bien être le suivant: je ne l'ai jamais fait fonctionner, j'ai fini par créer un nouveau projet et tout recommencé à copier dans les fichiers existants. Xcode est tellement ahh .... Il a tellement de choses non productives, comme essayer de renommer un fichier de "Nom" en "nom". Bien, amusez-vous bien.
J'ai trouvé la réponse ou la façon de contourner le problème: ouvrez le fichier pbxproj en cliquant avec le bouton droit de la souris sur "Afficher le contenu du paquet" et vous pourrez y éditer un fichier project.pbxproj. Vous devez renommer une référence appelée chemin et quelques autres éléments. le nom du dossier ajouté "/".
C’est ça… .. Espérons que cela aidera quelqu'un.
Voici un autre problème à connaître lors du remplacement de valeurs dans votre fichier * .pbxproj. Si votre ancien nom de dossier était FooBar, votre fichier * .pbxproj aura une entrée qui ressemble à ceci:
chemin = FooBar
Supposons que votre nouveau nom de dossier est Foo Bar. C'est-à-dire que vous introduisez un espace. Ensuite, cette ligne devrait devenir
path = "Foo Bar"
Si vous effectuez simplement une recherche et un remplacement, le résultat sera un fichier * .pbxproj que Xcode ne peut pas analyser. Si votre nouveau nom de dossier comporte un espace et que l'ancien nom n'en contient pas, veillez à inclure les guillemets.
Je me résume moi-même, après avoir examiné les différentes réponses ci-dessus et essayé moi-même… .. Supposons que le nom actuel du projet est ProjAbc et que vous souhaitiez le renommer en ProjDef:
Quittez Xcode de ce projet.
Dans le Finder, dupliquez le dossier ABOVE ProjAbc.xcodeproj pour la sauvegarde.
Dans le Finder, renommez librement le dossier ABOVE ProjAbc.xcodeproj si vous pensez en avoir besoin pour adapter le nouveau nom du projet.
Dans le Finder, renommez le dossier des fichiers source parallèlement à ProjAbc.xcodeproj de ProjAbc à ProjDef.
Ouvrez Xcode pour ProjAbc.xcodeproj (dans Project Navigator, tous les fichiers du dossier de source virtuelle ProjAbc seront en rouge).
Sous Xcode, cliquez sur le dossier virtuel (maintenant brisé) dans le navigateur de projet dans la barre latérale gauche et renommez-le afin qu'il corresponde à son nom dans le Finder - ProjDef. Cela ne résoudra pas encore les fichiers rouges dans le dossier, mais ce n'est pas grave.
Sous Xcode, (toujours en sélectionnant le dossier virtuel dans la barre latérale gauche) dans la barre latérale droite, dans l'inspecteur de fichier, cliquez sur l'icône affichée dans la capture d'écran ci-dessous pour ouvrir une boîte de dialogue de fichier. Dans la boîte de dialogue de fichier, sélectionnez le dossier que vous avez précédemment renommé (ProjDef). Cela associera à nouveau le dossier virtuel au dossier réel sur le disque et corrigera automatiquement les liens vers tous les fichiers contenus dans .
Dans Xcode, dans Project Navigator, cliquez sur le nom du projet ProjAbc et renommez-le ProjDef.
Dans Xcode, ouvrez maintenant "Paramètres de construction" dans la cible ProjDef (dans le projet ProjDef dans Project Navigator). Renommez les deux noms de nom de fichier et * des fichiers * -Info.plist et * -Prefix.pch pour qu'ils contiennent ProjDef au lieu de ProjAbc.
Dans Xcode, dans Project Navigator, dans le dossier des sources virtuelles ProjDef, dans "Fichiers de support", renommez à nouveau les fichiers * -Info.plist et * -Prefix.pch pour qu'ils contiennent ProjDef au lieu de ProjAbc.
Dans le menu Xcode, appuyez sur Produit/Schéma/Gérer les schémas ... (ou cliquez sur "ProjAbc"> Nom du schéma dans la barre de schéma en haut à gauche de Xcode et appuyez sur "Gérer les schémas ...") et dans la boîte de dialogue, renommez Schème de Projabc to ProjDef, puis appuyez sur le bouton "OK". Si le nom du projet est composé d'un seul mot, vous pouvez le lancer tout de suite!
Dans Xcode, modifiez la ligne de commentaire supérieure dans le fichier Supporting Files/* - Prefix.pch et remplacez ProjAbc par ProjDef (2 fois). Bien sûr, corriger ce commentaire est facultatif.
Quittez Xcode.
Dans le Finder, pointez sur ProjDef.xcodeproj et ouvrez-le dans l'éditeur de texte. (Ouvrez-le dans TextWrangler.app ou cliquez sur le bouton droit de la souris dans le menu contextuel, puis sélectionnez "Afficher le contenu du paquet", puis modifiez le fichier project.pbxproj dans TextEdit.app).
Dans l'éditeur de texte, recherchez "ProjAbc" (mot entier, casse correspondante) qui doit apparaître une fois (au paragraphe:/* Début de la section PBXNativeTarget */in line: productName = ProjAbc;) et remplacez-le par "ProjDef". En effet, le projet peut être exécuté quand même !, cette étape est donc facultative.
si le nom du projet est composé d'au moins 2 mots distincts, tels que "ProjDef Geh", vous DEVEZ effectuer les étapes suivantes: Recherchez la référence au dossier Finder du dossier des fichiers source virtuels -
Enregistrez depuis l'éditeur de texte et quittez l'éditeur de texte.
C'est tout. Comme indiqué ci-dessus, si le nom du projet est composé d'un seul mot, vous pouvez l'exécuter directement à la fin de l'étape 11.
Si vous avez une ancienne référence de projet source dans votre projet, dupliquez le projet (chaque modification apportée affecte les deux projets) Ici la solution
============================================== =======================
J'ai trouvé les réponses ci-dessus très utiles, notamment celle de Nick Lockwood.
Je viens de renommer quelques dossiers dans Xcode 8 et j'ai rencontré deux problèmes supplémentaires: A) "manquant dans les erreurs de copie de travail" B) Core Data plante.
Comment résoudre ces deux problèmes:
A) "manquant d'erreurs de copie de travail"
J'ai trouvé la réponse ci-dessous très utile: Swift 3/Xcode 8 Upgrade - Des centaines de fichiers DerivedData manquants en raison d'erreurs de copie de travail
Fondamentalement, Xcode 8 a un contrôle de source rigoureux, ce qui peut conduire aux erreurs ci-dessus. Vous devez:
Je suppose que vous avez déjà activé le contrôle de source. Si ce n'est pas le cas ou si vous êtes bloqué en suivant mes instructions, suivez simplement les instructions plus détaillées dans le lien fourni.
B) Core Data plante
Renommer des dossiers peut parfois bousiller Core Data. Ceci est possible pour plusieurs raisons, et voici quelques solutions que je peux suggérer:
Nom de modèle AppDelegate incorrect. C'était le cas dans ma situation. Accédez à votre AppDelegate et trouvez let container = NSPersistentContainer(name: "YOUR CORE DATA MODEL NAME")
. Assurez-vous que le nom est correct.
À l'avenir (plusieurs années après cette publication, lorsque Apple modifiera à nouveau Core Data) ou si vous utilisez une version antérieure de Core Data, examinez attentivement AppDelegate. Il y a probablement quelque chose de génial qui gâche vos données de base.
Nom de modèle incorrect dans xcdatamodeld. Allez dans le Finder et ouvrez votre fichier .xcdatamodeld dans un éditeur de texte.
Vérifiez les points suivants:
<plist version="1.0">
<dict>
<key>_XCCurrentVersionName</key>
<string>YOUR CORE DATA MODEL NAME.xcdatamodel</string> <-- Make sure this is correct.
</dict>
</plist>
Plus de détails ici: Les fichiers de modèle Core Data ne se chargent pas lors du changement de nom