- La guida definitiva all’installazione e all’aggiornamento dei pod
- Stai impostando CocoaPods in un progetto per la prima volta e hai creato il tuo Podfile
- Hai aggiunto un nuovo pod al tuo Podfile
- Vuoi ottenere l’ultima versione di tutti i pod nel tuo Podfile
- Vuoi ottenere l’ultima versione di un solo pod nel tuo Podfile
- Stai lavorando con un pod di sviluppo e vuoi ottenere le tue ultime modifiche
- Hai scaricato il sorgente di un progetto esistente che usa CocoaPods
- Stai scrivendo uno script per costruire un progetto su un build server
- Xcode sta riportando strani errori di build relativi ai pod
- Parte 2: Come funziona
- pod update
- pod install
- Sommario
La guida definitiva all’installazione e all’aggiornamento dei pod
La differenza tra pod install
e pod update
è sottile, e non è sempre chiaro quale dovresti usare. Ma avere una buona comprensione di cosa fanno questi comandi ti dà un controllo molto più fine su come le dipendenze sono gestite nel tuo progetto, quindi vale la pena conoscere la differenza.
Nella prima parte di questo articolo ti darò una lista di ricette che mostrano se dovresti eseguire pod install
o pod update
in alcune situazioni comuni. Poi nella seconda parte spiegherò perché i diversi comandi fanno cose diverse, e come CocoaPods usa il file Podfile.lock
per far accadere il tutto.
Per far funzionare queste ricette, assicuratevi che Podfile
e Podfile.lock
siano impegnati nel controllo dei sorgenti.
Stai impostando CocoaPods in un progetto per la prima volta e hai creato il tuo Podfile
pod install
Questo installerà l’ultima versione* di ciascuno dei pod che hai specificato nel tuo nuovo Podfile. Creerà anche un file MyProject.xcworkspace
se non esiste già.
Hai aggiunto un nuovo pod al tuo Podfile
pod install
Questo installerà l’ultima versione* di ogni nuovo pod aggiunto al tuo Podfile, lasciando gli altri pod invariati.
Se invece tu eseguissi pod update
, installerebbe i nuovi pod e aggiornerebbe ciascuno dei tuoi pod esistenti alla sua ultima versione*.
Vuoi ottenere l’ultima versione di tutti i pod nel tuo Podfile
pod update
Questo controllerà tutti i tuoi pod e si assicurerà che l’ultima versione* di ciascuno sia installata nel tuo progetto.
Vuoi ottenere l’ultima versione di un solo pod nel tuo Podfile
pod update SomePod
Questo si assicurerà che sia installata l’ultima versione* del pod che hai specificato, lasciando invariati gli altri pod.
Stai lavorando con un pod di sviluppo e vuoi ottenere le tue ultime modifiche
pod update MyDevelopmentPod
Questo farà in modo che venga installata l’ultima versione del tuo pod, lasciando invariati gli altri pod.
Hai scaricato il sorgente di un progetto esistente che usa CocoaPods
pod install
Questo installerà tutti i pod nel Podfile alle esatte versioni che sono state precedentemente installate in questo taglio del codice sorgente.
Se invece eseguissi pod update
, installerebbe l’ultima versione* di ciascuno dei pod nel Podfile. Questo potrebbe impedire la costruzione del progetto se le ultime versioni non fossero compatibili con altro codice nel progetto. Raccomanderei di eseguire pod install
per far costruire il codice, poi aggiornare i pod se necessario in modo controllato.
Stai scrivendo uno script per costruire un progetto su un build server
pod install
Questo installerà tutti i pod nel Podfile alle esatte versioni che sono state installate nella versione in costruzione. Questo è importante per una build stabile, perché queste sono le versioni con cui il codice è stato sviluppato, e significa che ogni build di quel pezzo di codice userà le stesse versioni di pod. Se dovessi usare pod update
invece, la tua build potrebbe potenzialmente usare versioni diverse dei pod ogni volta che costruisce.
Xcode sta riportando strani errori di build relativi ai pod
Questo accade occasionalmente dopo l’aggiornamento dei pod, o dopo il passaggio tra rami di un progetto che contengono gli stessi pod in versioni diverse.
Cancella la directory /Pods
, poi esegui pod install
Questo reinstallerà tutti i pod nel Podfile alle esatte versioni che erano state installate in precedenza, e di solito è sufficiente a risolvere qualsiasi problema che Xcode può avere.
A volte le persone suggeriscono di cancellare la directory /Pods
e il filePodfile.lock
, poi eseguire pod install
. Questo risolverà qualsiasi problema con Xcode, ma aggiornerà anche ciascuno dei pod nel Podfile alla sua ultima versione*.
Parte 2: Come funziona
La differenza tra pod install
e pod update
sta nel modo in cui interagiscono con il file Podfile.lock
. Questo file è usato per memorizzare l’esatta versione di ogni pod che è attualmente installato nel tuo progetto.
Il modo più semplice per capire come funziona è guardare il seguente diagramma (disclaimer: questo è un semplice schema piuttosto che un accurato diagramma tecnico).