¿Cuál es la forma correcta de eliminar CocoaPods de un proyecto? Quiero eliminar todo el CocoaPod. Debido a algunas limitaciones impuestas por mi cliente, no puedo usarlo. Necesito tener solo un xcodeproj en lugar de un xcworkspace.
pod deintegrate
¿Cuál es la forma correcta de eliminar CocoaPods de un proyecto? Quiero eliminar todo el CocoaPod. Debido a algunas limitaciones impuestas por mi cliente, no puedo usarlo. Necesito tener solo un xcodeproj en lugar de un xcworkspace.
pod deintegrate
Respuestas:
Es posible eliminar CocoaPods de un proyecto, pero actualmente no está automatizado por la CLI. Primero, si el único problema que tiene es no poder usar un xcworkspace
, puede usar CocoaPods con solo xcodeproj
s usando la --no-integrate
bandera que producirá el Pods.xcodeproj
espacio de trabajo pero no un espacio de trabajo. Luego puede agregar esto xcodeproj
como un subproyecto a su main xcodeproj
.
Si realmente desea eliminar toda la integración de CocoaPods, debe hacer algunas cosas:
NOTA editar algunas de estas cosas si se hace incorrectamente podría romper su proyecto principal. Le recomiendo encarecidamente que verifique sus proyectos en el control de origen por si acaso. Además, estas instrucciones son para la versión CocoaPods 0.39.0
, podrían cambiar con nuevas versiones.
Podfile
Podfile.lock
y su Pods
directorio)xcworkspace
xcodeproj
archivo, elimine las referencias a Pods.xcconfig
y libPods.a
(en el Frameworks
grupo)Build Phases
la eliminación Copy Pods Resources
, Embed Pods Frameworks
y Check Pods Manifest.lock
fases.Después de esos pasos, debería configurar uno xcodeproj
que existiera antes de integrar CocoaPods. Si me perdí algo, avíseme y lo editaré.
Además, siempre estamos buscando sugerencias sobre cómo mejorar CocoaPods, así que si tiene algún problema, envíelo en nuestro rastreador de problemas para que podamos encontrar una manera de solucionarlo.
EDITAR
Como lo muestra Jack Wu en los comentarios, hay un complemento de CocoaPods de terceros que puede automatizar estos pasos por usted. Se puede encontrar aquí . Tenga en cuenta que es un complemento de terceros y que no siempre se actualiza cuando CocoaPods lo está. También tenga en cuenta que está hecho por un miembro del equipo central de CocoaPods para que el problema no sea un problema.
pod deintegrate
y pod clean
son dos comandos designados para eliminar CocoaPod de su proyecto / repositorio.
Aquí está el conjunto completo de comandos:
$ sudo gem install cocoapods-deintegrate cocoapods-clean
$ pod deintegrate
$ pod cache clean --all
$ rm Podfile
La solución original se encontró aquí: https://medium.com/@icanhazedit/remove-uninstall-deintegrate-cocoapods-from-your-xcode-ios-project-c4621cee5e42#.wd00fj2e5
Documentación de CocoaPod en pod deintegrate
: https://guides.cocoapods.org/terminal/commands.html#pod_deintegrate
Para eliminar las vainas de un proyecto por completo, primero debe instalar dos cosas ... son las siguientes (suponiendo que ya tenga las vainas de cacao instaladas en su sistema) ...
Instalación
Complemento de desintegración de cacaopods
Use este siguiente comando en su terminal para instalarlo.
sudo gem install cocoapods-deintegrate
Complemento Cocoapods-Clean
Use este siguiente comando en su terminal para instalarlo.
sudo gem install cocoapods-clean
Uso
En primer lugar, vaya a la carpeta de su proyecto utilizando el comando habitual como ..
cd (path of the project) //Remove the braces after cd
Ahora use esos dos complementos para eliminarlo por completo de la siguiente manera ...
Complemento de desintegración de cacaopods
Utilice este siguiente comando en su terminal para desintegrar los pods de su proyecto primero.
pod deintegrate
Complemento Cocoapods-Clean
Después de la desintegración del pod de su proyecto, use este comando siguiente en su terminal para limpiarlo completamente.
pod clean
Después de completar las tareas anteriores, debería haber el Podfile todavía restante en el directorio de su proyecto ... Simplemente elimínelo manualmente o use este siguiente comando en el terminal ...
rm Podfile
Eso es todo ... Ahora tienes tu proyecto libre de pods ... Limpiado.
Eliminando Cocoapods del sistema.
De cualquier forma, intente utilizar el siguiente comando en su terminal para desinstalar / eliminar las vainas de coca de su sistema.
sudo gem uninstall cocoapods
Eliminará las vainas de coca automáticamente.
Gracias. Espero que esto haya ayudado.
pod clean
elimina tu espacio de trabajo , ¡incluso si tienes otros proyectos en él! ¡Ten cuidado!
Creo que hay una manera más fácil de hacerlo.
Según lo editado por la respuesta aceptada, ahora puede usar un complemento de terceros cocoapods-desintegrate , es confiable porque está hecho por un miembro del equipo central de CocoaPods.
Pero, todavía quedan algunos archivos:
Podfile
Podfile.lock
Workspace
Puede eliminarlos de su proyecto manualmente, pero también hay otra herramienta para ayudarlo a limpiarlos, gracias a cocoapods-clean .
Finalmente, el trabajo de desinstalación aún no se ha completado, cocoapods-clean
no limpie Podfile
, solo ejecute:
rm Podfile
¡Salud!
¡Antes de eliminarlo, debe asegurarse de tener una copia de seguridad de su proyecto!
pod deintegrate
Después de este cmd, no quedan rastros de Cocoapods en su proyecto.
Pero su espacio de trabajo que hace referencia al proyecto Pods aún permanece, debe eliminar manualmente los siguientes 3 archivos:
xx.xcworkspace
Podifle
Podfile.lock
Entonces puedes usar tu proyecto nuevamente.
¡Que te diviertas!
Prueba CocoaPod versión = 1.2.0
Intenté todas estas respuestas pero todavía no se compilaba, eventualmente intenté:
pod deintegrate
pod install
que realmente funcionó!
Es como si necesita eliminar todos los scripts de pod de sus fases de compilación y volver a agregarlos para que funcione, al menos en mi caso.
La respuesta de Keith es excelente: solo quiero señalar que debido a que Cocoapods 0.36 está comenzando a admitir Dynamic Frameworks , si está utilizando 'use_frameworks'. en su 'Podfile' y desea eliminar los Cocoapods, debe hacer esto:
Build Phases
borrado Embed Pods Frameworks
fase.Pods
interior, Build Phases
elimínelos también.
Puede haber dos aspectos que el desarrollador pueda enfrentar.
En el primer caso, debe usar 'pod desintegrate' y seguir varios pasos que se mencionan en las respuestas anteriores.
Para el segundo caso, si desea desinstalar cualquier marco particular que esté instalado allí de una manera muy simple disponible en su archivo pod, simplemente comente el marco que desea desinstalar y ejecute el comando de instalación de pod.
# 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
Aquí quiero desinstalar los marcos de facebook y parse (que se instalaron usando pods) y no iCarousel, es por eso que he actualizado mi archivo de pod como el anterior.
Ahora, si ejecuto la instalación de pod, mantendrá iCarousel como está en mi proyecto y eliminará Facebook y analizará.
Podfile
, Podfile.lock
la Pods
carpeta y el espacio de trabajo generados..xcodeproj
, elimine las referencias a los Pods.xcconfig
archivos y al libPods.a
archivo.Pods.framework
.Lo único que puede hacer es incluir algunas de las bibliotecas que estaba utilizando antes. Puede hacer esto simplemente arrastrando las carpetas en las carpetas de pods a su proyecto (prefiero ponerlas en mi carpeta Archivos de soporte).
Funcionó para mi.
$ sudo gem install cocoapods-deintegrate cocoapods-clean
$ pod deintegrate
$ pod clean
$ rm Podfile
gem uninstall cocoapods-deintegrate cocoapods-clean
Si no funciona, intente
1. limpiar el proyecto.
2. datos derivados eliminados.
si no sabe cómo eliminar datos derivados, vaya aquí
Eliminar todos los archivos pod relacionados:
y en el Navegador de proyectos:
Haga clic en el nombre del proyecto (icono azul) -> Objetivos (*) -> Fases de compilación -> Eliminar "[CP] Comprobar Pods manifiestos.lock" (haga clic en la "x")
(*) Haga clic en el nombre del proyecto, puede que tenga que hacer clic en "Mostrar lista de proyectos y objetivos" para ver primero la barra lateral.
Voy a escribir lo que he hecho muy brevemente (para eliminar CocoaPods de mi proyecto).
Para eliminar la referencia de marco de xcode:
podfile
nombre de.plist
Si solo desea eliminar un pod y conservar otros que haya instalado, abra el podfile en el directorio de su aplicación y elimine el que desea eliminar. Luego navegue a su directorio de aplicaciones usando la terminal y escriba:
pod update
Esto eliminará el pod que eliminó del podfile. Verá que se ha eliminado en la terminal:
Analyzing dependencies
Removing FirebaseUI
Removing UICircularProgressRing
Tenga en cuenta que este método también extraerá cualquier actualización a los otros pods en su podfile. Puede o no querer eso.
pod install
para agregar / eliminar pods. Esto es específicamente para evitar la actualización como dijiste aquí. Puede leer más sobre sus 'Guías' sobre este mismo tema ... guides.cocoapods.org/using/pod-install-vs-update.html
Use los comandos de estos terminales (no olvide usar sudo al comienzo de las nuevas líneas):
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)
Desinstale la lista uno por uno de esta manera:
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
No creo que necesites desintegrarte más. Pude hacerlo con el siguiente comando en la terminal:
instalación de pod
y eliminó automáticamente los que ya no están en el podfile