Comment supprimer CocoaPods d'un projet?

Quelle est la bonne façon d'éliminer les CocoaPods d'un projet? Je veux enlever tout le CocoaPod. En raison de certaines limites imposées par mon client, je ne peux pas l'utiliser. J'ai besoin d'avoir juste une xcodeproj au lieu d'une xcworkspace.

392
demandé sur Josh Caswell 2013-05-07 23:54:23

15 réponses

Supprimer CocoaPods d'un projet est possible, mais pas encore automatisée par le CLI. Tout d'abord, si le seul problème que vous avez est de ne pas pouvoir utiliser un xcworkspace vous pouvez utiliser des CocoaPods avec juste xcodeproj en utilisant le drapeau --no-integrate qui produira le Pods.xcodeproj mais pas un espace de travail. Vous pouvez alors ajouter ce xcodeproj comme sous-projet à votre xcodeproj principal .

si vous voulez vraiment supprimer tous CocoaPods intégration vous avez besoin de faire quelques petites choses:

NOTE éditer certaines de ces choses si fait incorrectement pourrait briser votre projet principal. Je vous encourage fortement à vérifier vos projets dans le contrôle des sources juste au cas où. Aussi ces instructions sont pour la version CocoaPods 0.39.0 , ils pourraient changer avec de nouvelles versions.

  1. supprimer les fichiers autonomes ( Podfile Podfile.lock et votre Pods répertoire)
  2. Supprimer xcworkspace
  3. "
  4. ouvrir votre fichier xcodeproj , supprimer les références à Pods.xcconfig et libPods.a (dans le groupe Frameworks )
  5. sous Build Phases supprimer les phases Copy Pods Resources , Embed Pods Frameworks et Check Pods Manifest.lock .
  6. cela peut sembler évident, mais vous devrez intégrer les bibliothèques de tiers d'une autre manière ou supprimer les références à eux de votre code.

après ces étapes, vous devez être réglé avec un seul xcodeproj qui existait avant que vous intégriez des CocoaPods. Si j'ai manqué quelque chose, dites-le-moi et je le modifierai.

aussi nous sommes toujours à la recherche de suggestions pour la façon d'améliorer les CocoaPods donc si vous avez un problème s'il vous plaît les soumettre dans notre suivi des problèmes afin que nous puissions trouver un moyen de les corriger!

Modifier

Comme montré par Jack Wu dans les commentaires il y a un tiers CocoaPods plugin qui permet d'automatiser ces étapes pour vous. Il peut être trouvé ici . Notez qu'il s'agit d'un plugin tiers et qu'il n'est pas toujours mis à jour lorsque CocoaPods l'est. Notez aussi qu'il est fait par un membre de l'équipe de base CocoaPods pour que ce problème ne soit pas un problème.

955
répondu Keith Smiley 2015-11-16 19:24:52

pod deintegrate et pod clean sont deux des commandes pour supprimer CocoaPod de votre projet/repo.

Voici l'ensemble complet des commandes:

$ sudo gem install cocoapods-deintegrate cocoapods-clean
$ pod deintegrate
$ pod clean
$ rm Podfile

la solution originale a été trouvée ici: https://medium.com/@icanhazedit/remove-uninstall-deintegrate-cocoapods-from-your-xcode-ios-project-c4621cee5e42#.wd00fj2e5

CocoaPod documentation sur pod deintegrate : https://guides.cocoapods.org/terminal/commands.html#pod_deintegrate

260
répondu DevGansta 2016-01-13 11:16:44

je pense qu'il y a un moyen plus facile de le faire.

tel que modifié par la réponse acceptée, maintenant vous pouvez utiliser un plugin tiers cocoapods-deintegrate , il est fiable parce que son fait par un CocoaPods membre de l'équipe de base.

mais, il reste encore quelques fichiers:

Podfile
Podfile.lock
Workspace

vous pouvez les retirer de votre projet manuellement, mais il ya aussi un autre outil pour vous aider à les nettoyer, merci cocoapods-propre .

enfin, le travail de désinstallation n'est pas encore terminé, cocoapods-clean ne pas nettoyer le Podfile , juste exécuter:

rm Podfile

santé!

avant de supprimer, vous devriez vous assurer que vous avez une sauvegarde de votre projet!

46
répondu Allen 2016-06-09 23:55:43

pod deintegrate

après ce cmd, pas de traces de Cocoapods dans votre projet.

mais votre espace de travail référencement du projet Pods reste, vous devez supprimer manuellement ci-dessous 3 fichiers:

xx.xcworkspace

Podifle

Podfile.serrure

alors vous pouvez utilisez votre projet de nouveau.

amusez-vous bien!

Test Version CocoaPod = 1.2.0

40
répondu mistdon 2017-10-16 08:20:14

pour supprimer complètement les gousses d'un projet, vous devez installer deux choses d'abord...ceux sont les suivantes(en Supposant que vous avez déjà cacao gousses installé dans votre système.)...

  1. Cocoapods-Deintegrate Plugin
  2. Cocoapods-Propre Plugin

Installation

  1. Cocoapods-Deintegrate Plugin

    Use cette commande suivante dans votre terminal pour l'installer.

    sudo gem install cocoapods-deintegrate
    
  2. Cocoapods-Propre Plugin

    utilisez la commande suivante sur votre terminal pour l'installer.

    sudo gem install cocoapods-clean
    

Utilisation

tout d'abord, allez dans votre dossier projet en utilisant la commande comme d'habitude..

cd (path of the project) //Remove the braces after cd

utilisez maintenant ces deux les plugins deux le suppriment complètement comme suit..

  1. Cocoapods-Deintegrate Plugin

    utilisez cette commande suivante sur votre terminal pour désintégrer les pods de votre projet en premier.

     pod deintegrate
    

Deintegrating Pods

  1. Cocoapods-Clean Plugin

    après désintégration du module de votre projet utilisez cette commande suivante sur votre terminal pour le nettoyer complètement.

     pod clean
    

    après avoir terminé les tâches ci-dessus, il devrait y avoir le fichier Podfile toujours dans votre répertoire de projet..Il suffit de le supprimer manuellement ou d'utiliser cette commande suivante sur le terminal..

     rm Podfile
    

c'est tout...Maintenant vous avez votre projet libre des gousses..Nettoyer.

Retrait des Cocoapods du système.

essayez de n'importe quelle façon d'utiliser la commande suivante sur votre terminal pour désinstaller/enlever les gousses de coca de votre système.

sudo gem uninstall cocoapods

il supprimera les gousses de coca automatiquement.

Merci. Espérons que cela a aidé.

39
répondu onCompletion 2018-05-11 18:28:45

j'ai essayé toutes ces réponses mais il ne serait toujours pas construire, finalement j'ai essayé:

pod deintegrate
pod install

qui a vraiment fonctionné!

c'est comme s'il avait besoin de supprimer tous les scripts pod de vos phases de construction et de les ajouter à nouveau pour qu'il fonctionne, du moins dans mon cas.

17
répondu David Rees 2016-02-17 02:21:47

la réponse de Keith est super - je veux juste souligner que parce que Cocoapods 0.36 commence à supporter Dynamic Frameworks , si vous utilisez 'use_frameworks!'dans votre' Podfile ' et vous souhaitez supprimer les Cocoapods, vous devez faire ceci:

  • sous Build Phases supprimer Embed Pods Frameworks phase.
12
répondu Chao Ruan 2015-07-08 19:04:06

il peut y avoir deux aspects développeur peut faire face.

  • soit il veut enlever les gousses complètement du projet
  • le développeur veut désinstaller le cadre particulier du projet de cosse.

dans le premier cas, vous devez utiliser 'pod deintegrate' et suivre plusieurs étapes qui sont mentionnées dans les réponses ci-dessus.

pour le deuxième cas qui est si vous voulez désinstaller tout particulier framework qui est installé là très simple façon disponible dans votre fichier pod juste commentaire le cadre que vous voulez désinstaller et exécuter la commande pod install.

# Uncomment this line to define a global platform for your project
# platform :ios, '9.0'
target 'ProjectName' do
  # Uncomment this line if you're using Swift or would like to use dynamic frameworks
  # use_frameworks!

    pod 'iCarousel', '~> 1.8'
#    pod 'Facebook-iOS-SDK', '~> 4.1'
#    pod 'ParseFacebookUtilsV4', '~> 1.11'
#    pod 'Parse', '~> 1.14'


end

ici, je veux désinstaller les cadres facebook et parse (qui ont été installés en utilisant des pods) et non iCarousel c'est pourquoi j'ai mis à jour mon fichier pod comme ci-dessus.

maintenant si je lance pod install il va garder iCarousel comme il est dans mon projet et va supprimer facebook et parse.

5
répondu Aditya Shinde 2016-07-29 12:42:54
  1. la première chose que vous devez faire est de supprimer le Podfile , Podfile.lock , le dossier Pods , et l'espace de travail généré.
  2. ensuite , dans le .xcodeproj , supprimer les références aux fichiers Pods.xcconfig et le fichier libPods.a .
  3. dans l'onglet Projet des phases de construction, supprimer le Manifeste des gousses de vérification.section de verrouillage (ouverte), section de ressources de Pods de copie (en bas) et les ressources de Pod D'intégration(en bas).
  4. Supprimer Pods.framework .

La seule chose que vous pouvez faire est d'inclure les bibliothèques que vous utilisiez avant. Vous pouvez faire cela simplement en drainant les dossiers où dans les pods dossiers dans votre projet (je préfère les mettre dans mon dossier de soutien de dossiers).

ça a marché pour moi.

3
répondu A.G 2015-12-31 21:58:26

Si pas, essayez de

1. nettoyez le projet.

2. données dérivées supprimées.



si vous ne savez pas comment supprimer les données dérivées aller ici

Comment "supprimer les données dérivées" dans Xcode6?

2
répondu Ego Slayer 2017-05-23 12:34:45

je vais écrire ce que iv a fait très brièvement (pour supprimer tous les CocoaPods de mon projet)..

  1. supprimer tout dossier ajouté (frameworks, Pods,...)
  2. supprimer tout fichier ajouté (PROJECT.xcworkspace, PodFile, PodFile.de verrouillage, les Gousses de PROJET.débogage.xcconfig, Pods-PROJECT.publier.xcconfig,...)
  3. il suffit de laisser vos originaux (PROJECT, PROJECT_Tests, PROJECT.xcodeproj)
  4. supprimer la référence au cadre du projet sur xcode

pour supprimer la référence de cadre de xcode:

  1. utiliser le navigateur du projet
  2. Sélectionnez Le Projet
  3. Sélectionner la Cible du PROJET
  4. sélectionnez les phases de construction parmi les options du haut
  5. quitter les groupes par défaut (dépendances cibles, compiler des Sources, binaire lié avec des bibliothèques, copier des ressources paquet) et supprimer toute autre
1
répondu SoliQuiD 2016-03-30 11:15:42
  1. supprimer le podfile nom de .plist
  2. réinstaller à nouveau le pod (utilisez ce lien pour l'installation du pod)
1
répondu Bibin Joseph 2017-05-03 13:22:36

utilisez les commandes de ces terminaux (n'oubliez pas d'utiliser sudo au début des nouvelles lignes):

open:YourDir YouName$ sudo gem uninstall cocoapods
Password:?
Remove executables:
    pod, sandbox-pod

in addition to the gem? [Yn]  Y
Removing pod
Removing sandbox-pod
Successfully uninstalled cocoapods-1.4.0
open:YourDir YourName$ gem list --local | grep cocoapods
cocoapods-core (1.4.0)
cocoapods-deintegrate (1.0.2)
cocoapods-downloader (1.1.3)
cocoapods-plugins (1.0.0)
cocoapods-search (1.0.0)
cocoapods-stats (1.0.0)
cocoapods-trunk (1.3.0)
cocoapods-try (1.1.0)

Désinstaller la liste un par un, comme ceci:

open:YourDir YourName$ sudo gem uninstall cocoapods-core
Successfully uninstalled cocoapods-core-1.4.0
open:YourDir YourName$ sudo gem uninstall cocoapods-trunk
Successfully uninstalled cocoapods-trunk-1.3.0
open:YourDir YourName$ sudo gem uninstall cocoapods-try
Successfully uninstalled cocoapods-try-1.1.0
open:YourDir YourName$ gem list --local | grep cocoapods
open:YourDir YourName$ sudo gem uninstall cocoapods-stats
Successfully uninstalled cocoapods-stats-1.0.0
open:YourDir YourName$ sudo gem uninstall cocoapods-search
Successfully uninstalled cocoapods-search-1.0.0
open:YourDir YourName$ sudo gem uninstall cocoapods-downloader
Successfully uninstalled cocoapods-downloader-1.1.3
open:YourDir YourName$ sudo gem uninstall cocoapods-plugins
Successfully uninstalled cocoapods-plugins-1.0.0
open:YourDir YourName$ gem list --local | grep cocoapods
cocoapods-deintegrate (1.0.2)
open:YourDir YourName$ sudo gem uninstall cocoapods-deintegrate
Successfully uninstalled cocoapods-deintegrate-1.0.2
open:YourDir YourName$ sudo gem uninstall cocoapods-stats
Successfully uninstalled cocoapods-stats-1.0.0
open:YourDir YourName$ sudo gem uninstall cocoapods-search
Successfully uninstalled cocoapods-search-1.0.0
open:YourDir YourName$ sudo gem uninstall cocoapods-downloader
Successfully uninstalled cocoapods-downloader-1.1.3
open:YourDir YourName$ sudo gem uninstall cocoapods-plugins
Successfully uninstalled cocoapods-plugins-1.0.0
open:YourDir YourName$ gem list --local | grep cocoapods
cocoapods-deintegrate (1.0.2)
open:YourDir YourName$ sudo gem uninstall cocoapods-deintegrate
Successfully uninstalled cocoapods-deintegrate-1.0.2
0
répondu CrownFord 2018-02-05 15:48:58

supprimer tous les fichiers pod liés.

xx.xcworkspace Podifle Podfile.serrure

et Goto Cibles-->phase de construction-->Ici supprimer le [cp] vérifier les gousses se manifeste.serrure

0
répondu Mailavan C 2018-06-28 12:28:14

comment améliorer cocoapods: construire une GUI et oublier cette folie de ligne de commande. Nous ne sommes plus en 1974.

-4
répondu BlackVoid 2018-04-07 14:11:54