Il problema principale in cui vi imbatterete è che CocoaPods e Carthage non si conoscono l'un l'altro. Ciò significa che se una dipendenza gestita da CocoaPods e una dipendenza di Carthage condividono una dipendenza comune, i conflitti potrebbero sorgere.
Carthage richiede l'aggiunta manuale di framework a un progetto, il che significa che è probabile che si possa fare a meno di collegare alcuna dipendenza condivisa e fare affidamento sul framework aggiunto da CocoaPods, ma non si otterrà la risoluzione della versione di dipendenza tra le due dipendenze manager e non sarà chiaro come funziona tutto.
Detto questo, non ci sono motivi intrinseci per cui non è possibile utilizzare entrambi, e se la libreria che si desidera includere ha poche o nessuna dipendenza, è probabilmente ancora preferibile usare Carthage piuttosto che includere la libreria come un sottomodulo o addirittura copiare la fonte.
La mia raccomandazione, se possibile, è quella di includere le altre dipendenze tramite Cartagine o di creare un podspec per la libreria in modo da poter utilizzare esclusivamente Carthage o CocoaPods.
fonte
2016-01-06 09:52:24
Questo è praticamente quello che ho capito ... Ho provato a installare i deps da entrambi i gestori insieme, e non ho incontrato alcun problema. Ma ho creato un podspec per la libreria di Carthage, poiché preferirei che i miei deps fossero gestiti in un modo. –
Inoltre: se hai un Podfile nel tuo repository e usi Travis-CI, Travis supporrà che tu voglia installare i pod anche se non lo dici esplicitamente di farlo nel tuo .travis.yml. Se si dispone di un solo .podspec, nessun problema con Travis presupponendo di averlo impostato per eseguire 'carthage update --platform ' –