- La guía definitiva para instalar y actualizar pods
- Está configurando CocoaPods en un proyecto por primera vez y ha creado su Podfile
- Ha añadido un nuevo pod a su Podfile
- Desea obtener la última versión de todos los pods en su Podfile
- Desea obtener la última versión de un solo pod en su Podfile
- Está trabajando con un pod de desarrollo y quiere obtener sus últimos cambios
- Ha descargado el código fuente de un proyecto existente que utiliza CocoaPods
- Está escribiendo un script para construir un proyecto en un servidor de construcción
- Xcode está informando de extraños errores de construcción relacionados con los pods
- Parte 2: Cómo funciona
- la actualización de pods
- pod install
- Resumen
La guía definitiva para instalar y actualizar pods
La diferencia entre pod install
y pod update
es sutil, y no siempre está claro cuál debes usar. Pero tener una buena comprensión de lo que hacen estos comandos te da un control mucho más fino sobre cómo se gestionan las dependencias en tu proyecto, por lo que vale la pena conocer la diferencia.
En la primera parte de este artículo te daré una lista de recetas que muestran si debes ejecutar pod install
o pod update
en algunas situaciones comunes. Luego, en la segunda parte, explicaré por qué los diferentes comandos hacen cosas diferentes, y cómo CocoaPods utiliza el archivo Podfile.lock
para hacer que todo suceda.
Para que estas recetas funcionen, asegúrese de que Podfile
y Podfile.lock
estén comprometidos con el control de origen.
Está configurando CocoaPods en un proyecto por primera vez y ha creado su Podfile
pod install
Esto instalará la última versión* de cada uno de los pods que especificó en su nuevo Podfile. También creará un archivo MyProject.xcworkspace
si no existe ya uno.
Ha añadido un nuevo pod a su Podfile
pod install
Esto instalará la última versión* de cualquier pods nuevo añadido a su Podfile, dejando sus otros pods sin cambios.
Si ejecutara pod update
en su lugar, instalaría los nuevos pods y actualizaría cada uno de sus pods existentes a su última versión*.
Desea obtener la última versión de todos los pods en su Podfile
pod update
Esto irá a través de todos sus pods y se asegurará de que la última versión* de cada uno está instalada en su proyecto.
Desea obtener la última versión de un solo pod en su Podfile
pod update SomePod
Esto se asegurará de que se instala la última versión* del pod que especifique, dejando sus otros pods sin cambios.
Está trabajando con un pod de desarrollo y quiere obtener sus últimos cambios
pod update MyDevelopmentPod
Esto asegurará que se instale la última versión de su pod, dejando sus otros pods sin cambios.
Ha descargado el código fuente de un proyecto existente que utiliza CocoaPods
pod install
Esto instalará todos los pods en el Podfile en las versiones exactas que se instalaron previamente en este corte del código fuente.
Si ejecutara pod update
en su lugar, instalaría la última versión* de cada uno de los pods en el Podfile. Esto podría impedir la construcción del proyecto si las últimas versiones no fueran compatibles con otro código del proyecto. Yo recomendaría ejecutar pod install
para conseguir la construcción del código, y luego actualizar los pods según sea necesario de una manera controlada.
Está escribiendo un script para construir un proyecto en un servidor de construcción
pod install
Esto instalará todos los pods en el Podfile en las versiones exactas que se instalaron en la versión que se está construyendo. Esto es importante para una construcción estable, porque estas son las versiones contra las que se desarrolló el código, y significa que cada construcción de ese corte de código utilizará las mismas versiones de pods. Si se utiliza pod update
en su lugar, su construcción podría potencialmente utilizar diferentes versiones de pods cada vez que se construye.
Xcode está informando de extraños errores de construcción relacionados con los pods
Esto ocurre ocasionalmente después de actualizar los pods, o después de cambiar entre las ramas de un proyecto que contienen los mismos pods en diferentes versiones.
Borra el directorio /Pods
, y luego ejecute pod install
Esto reinstalará todos los pods en el Podfile en las versiones exactas que fueron instaladas previamente, y suele ser suficiente para enderezar cualquier problema que Xcode pueda encontrar.
A veces la gente sugiere borrar el directorio /Pods
y el archivoPodfile.lock
, y luego ejecutar pod install
. Esto resolverá cualquier problema con Xcode, pero también actualizará cada uno de los pods del Podfile a su última versión*.
Parte 2: Cómo funciona
La diferencia entre pod install
y pod update
radica en cómo interactúan con el archivo Podfile.lock
. Este archivo se utiliza para almacenar la versión exacta de cada pod que está actualmente instalado en su proyecto.
La forma más fácil de entender cómo funciona es mirar el siguiente diagrama (advertencia: se trata de un simple esquema más que de un diagrama técnico preciso).