Comment renommer complètement un projet Xcode (y compris les dossiers)?

J’ai un projet nommé XXX . Je veux renommer ce projet en YYY .

Notez que XXX est un terme extrêmement commun (par exemple “data”, ou simplement “project”), et donc une simple recherche et remplacement de RegEx n’est pas possible, à risque de corrompre les fichiers de configuration du projet.

Mon répertoire de projet en cours contient les éléments suivants:

  • XXX
  • XXXTests
  • XXX.xcodeproj

et je veux les renommer à:

  • YYY
  • YYYTests
  • YYY.xcodeproj

… respectivement, les modifications nécessaires étant reflétées dans mon dossier de projet.

Comment puis-je accomplir cela sans avoir à créer et à remplir manuellement un nouveau projet?


Edit: Il est absolument ridicule que cela soit devenu ma question la plus relevée: p

Étape 1 – Renommer le projet

  1. Cliquez sur le projet que vous souhaitez renommer dans le “Navigateur de projets” situé à gauche de la vue Xcode.
  2. À droite, sélectionnez “Inspecteur de fichiers” et le nom de votre projet devrait s’y trouver sous “Identité et type”, remplacez-le par le nouveau nom.
  3. Cliquez sur “Renommer” dans un menu déroulant

Étape 2 – Renommer le schéma

  1. Dans la barre du haut (près du bouton “Stop”), il y a un schéma pour votre ancien produit, cliquez dessus, puis allez dans “Gérer les schémas”
  2. Cliquez sur le nom dans le schéma, et il deviendra éditable, changez le nom

Étape 3 – Renommez le dossier avec vos ressources

  1. Quitter Xcode
  2. Dans le dossier maître correctement nommé, il y a un fichier xcodeproj récemment nommé avec le dossier OLD mal nommé. Renommez le dossier OLD à votre nouveau nom
  3. Rouvrez le projet, vous verrez un avertissement: “Le dossier OLD n’existe pas”, ignorer l’avertissement
  4. Dans le “Navigateur de projet” sur la gauche, cliquez sur le nom du dossier OLD de niveau supérieur
  5. Dans la sous-fenêtre Utilitaires sous “Identité et type”, vous verrez l’entrée “Nom”, remplacez-la par la nouvelle par le nouveau nom.
  6. Juste en dessous se trouve une entrée “Lieu”. Cliquez sur un dossier portant le nom OLD et choisissez le dossier nouvellement renommé

Étape 4 – Renommer les données Build plist **

  1. Cliquez sur le projet dans le “Navigateur de projets” à gauche, dans le panneau principal, sélectionnez “Paramètres de construction”
  2. Recherche de “plist” dans cette section
  3. Sous emballage, vous verrez Info.plist et Product bundle identifier
  4. Renommez l’entrée supérieure dans Info.plist
  5. Faites de même pour l’ Product Identifier

Enfin , vous avez terminé et pouvez reconstruire ( Commande + Maj + K pour nettoyer, Commande + B pour construire)

Pour append à la réponse excellente de @ luke-west:

Lors de l’utilisation de CocoaPods

Après l’étape 2:

  1. Quittez XCode.
  2. Dans le dossier principal, renommez OLD.xcworkspace en NEW.xcworkspace .

Après l’étape 4:

  1. Dans XCode: choisissez et éditez Podfile partir du navigateur de projet. Vous devriez voir une clause target avec le nom OLD. Changez-le en NOUVEAU.
  2. Quittez XCode.
  3. Dans le dossier du projet, supprimez le fichier OLD.podspec .
  4. rm -rf Pods/
  5. Exécutez l’ pod install .
  6. Ouvrez XCode.
  7. Cliquez sur le nom de votre projet dans le navigateur de projet.
  8. Dans le volet principal, passez à l’onglet Build Phases .
  9. Sous Link Binary With Libraries , recherchez libPods-OLD.a et supprimez-le.
  10. Si vous avez un en-tête Bridging objective-c, allez dans Paramètres de construction et changez l’emplacement de l’en-tête de OLD / OLD-Bridging-Header.h à NEW / NEW-Bridging-Header.h
  11. Nettoyer et courir.

Une solution plus rapide en utilisant des commandes shell (fonctionne aussi avec CocoaPods):

S’IL VOUS PLAÎT cd un repository non-git avant de procéder ⚠️

Étape 1 – Prérequirejs

  1. Copiez votre dossier de projet d’origine dans un répertoire temporaire /NewProjectFolder votre repository /NewProjectFolder . ⚠️ les modifications apscopes à .git pourraient corrompre votre index git 💥 ☠

Étape 2 – Terminal ouvert

Maintenant, nous allons renommer le projet de oldName en NewProject .

  • Fermez XCode.
  • Accédez à votre /NewProjectFolder .
 cd /Path/to/your/NewProjectFolder 
  • Installez les outils supplémentaires nécessaires.
 brew install rename ack 
  • Renommez les fichiers et répertoires contenant la chaîne source. Vous devrez exécuter cette commande deux fois , car les répertoires seront renommés en premier, les fichiers et répertoires de ceux-ci seront renommés à la prochaine itération.
 find . -name 'oldName*' -print0 | xargs -0 rename --subst-all 'oldName' 'NewProject' 
  • Vérifiez si tous les fichiers contenant la chaîne source sont renommés. Vous devriez voir une sortie vide.
 find . -name 'oldName*' 
  • Remplacez toutes les occurrences de la chaîne dans tous les fichiers.
 ack --literal --files-with-matches 'oldName' --print0 | xargs -0 sed -i '' 's/oldName/NewProject/g' 
  • Vérifiez si toutes les occurrences de la chaîne dans tous les fichiers ont été remplacées. Vous devriez voir une sortie vide.
 ack --literal 'oldName' 
  • Exécuter l’ pod install
  • Ajoutez NewProjectFolder à votre référentiel.
  • Vous avez terminé!

Pour changer le nom du projet;

  1. Sélectionnez votre projet dans le navigateur de projet.

2.Dans la section Identité et type de l’inspecteur de fichiers, entrez un nouveau nom dans le champ Nom.

3. Appuyez sur Retour.

Une boîte de dialog s’affiche, répertoriant les éléments de votre projet pouvant être renommés. La boîte de dialog comprend un aperçu de la manière dont les éléments apparaîtront après le changement.

  1. Pour renommer les éléments de manière sélective, désactivez les cases à cocher pour tous les éléments que vous ne souhaitez pas renommer. Pour renommer uniquement votre application, laissez l’application sélectionnée et désélectionnez tous les autres éléments.

  2. Appuyez sur “Renommer”

Il y a un projet GitHub appelé Xcode Project Renamer :

Il doit être exécuté depuis la racine du répertoire du projet Xcode et appelé avec deux parameters de chaîne: $ OLD_PROJECT_NAME & $ NEW_PROJECT_NAME

Le script parcourt tous les fichiers et répertoires de manière récursive, y compris le projet Xcode ou le fichier d’espace de travail, et remplace toutes les occurrences de la chaîne $ OLD_PROJECT_NAME par la chaîne $ NEW_PROJECT_NAME (à la fois dans le nom et le contenu de chaque fichier).

Projet Xcode Renamer

Instructions supplémentaires lorsque vous suivez les solutions de @ Luke-West + @ Vaiden:

  • Si votre schéma n’a pas changé (montrant toujours mon mac) en haut à gauche à côté du bouton d’arrêt:

    1. Cliquez sur NEWLY créé Nom du projet (à côté du bouton stop)> Cliquez sur Edit Schemes> Build (à gauche)> Supprimez l’ancienne cible (dira manquante) et remplacez-la par le projet NEWLY nommé sous le logo du projet NEWLY nommé

De plus, je n’ai pas eu à utiliser l’étape 3 de la solution de @ Vaiden. Il suffit de rm -rf Pods/ in terminal pour supprimer tous les anciens fichiers pod

Je n’ai pas non plus eu à utiliser l’étape 9 de la solution de @ Vaiden, mais j’ai simplement supprimé le projet OLD nommé framework sous Link Binary Libraries (le framework nommé NEWLY était déjà présent)

Les étapes mises à jour sont les suivantes:

Étape 1 – Renommer le projet

  1. Cliquez sur le projet que vous souhaitez renommer dans le “Navigateur de projets” situé à gauche de la vue Xcode.
  2. À droite, sélectionnez “Inspecteur de fichiers” et le nom de votre projet devrait s’y trouver sous “Identité et type”, remplacez-le par le nouveau nom.
  3. Cliquez sur “Renommer” dans un menu déroulant

Étape 2 – Renommer le schéma

  1. Dans la barre du haut (près du bouton “Stop”), il y a un schéma pour votre ancien produit, cliquez dessus, puis allez dans “Gérer les schémas”
  2. Cliquez sur le nom dans le schéma, et il deviendra éditable, changez le nom
  3. Quittez XCode.
  4. Dans le dossier principal, renommez OLD.xcworkspace en NEW.xcworkspace.

Étape 3 – Renommez le dossier avec vos ressources

  1. Quitter Xcode
  2. Dans le dossier maître correctement nommé, il y a un fichier xcodeproj récemment nommé avec le dossier OLD mal nommé. Renommez le dossier OLD à votre nouveau nom
  3. Rouvrez le projet, vous verrez un avertissement: “Le dossier OLD n’existe pas”, ignorer l’avertissement
  4. Dans le “Navigateur de projet” sur la gauche, cliquez sur le nom du dossier OLD de niveau supérieur
  5. Dans la sous-fenêtre Utilitaires sous “Identité et type”, vous verrez l’entrée “Nom”, remplacez-la par la nouvelle par le nouveau nom.
  6. Juste en dessous se trouve une entrée “Lieu”. Cliquez sur un dossier portant le nom OLD et choisissez le dossier nouvellement renommé

Étape 4 – Renommer les données Build plist

  1. Cliquez sur le projet dans le “Navigateur de projets” à gauche, dans le panneau principal, sélectionnez “Paramètres de construction”
  2. Recherche de “plist” dans cette section Sous emballage, vous verrez Info.plist et Identifiant du lot de produits
  3. Renommez l’entrée supérieure dans Info.plist
  4. Faites de même pour l’identificateur de produit

Étape 5 Gestion du podfile

  1. Dans XCode: choisissez et éditez Podfile à partir du navigateur de projet. Vous devriez voir une clause cible avec le nom OLD. Changez-le en NOUVEAU.
  2. Quittez XCode.
  3. Dans le terminal, cd dans le répertoire du projet, alors: rm -rf Pods/
  4. Exécutez l’installation du pod.
  5. Ouvrez XCode.
  6. Cliquez sur le nom de votre projet dans le navigateur de projet.
  7. Dans le volet principal, passez à l’onglet Build Phases. Sous Link Binary With Libraries, recherchez le framework OLD et supprimez-le (devrait dire qu’il manque) Le framework NEWLY nommé devrait déjà être présent, sinon utilisez le bouton “+” en bas de la fenêtre pour l’append
  8. Si vous avez un en-tête Bridging objective-c, allez dans Paramètres de construction et changez l’emplacement de l’en-tête de OLD / OLD-Bridging-Header.h à NEW / NEW-Bridging-Header.h
  9. Nettoyer et courir.

Vous devriez être capable de créer sans erreur après avoir suivi toutes les étapes avec succès