- O guia definitivo para instalação e atualização de pods
- Você está configurando CocoaPods em um projeto pela primeira vez e criou seu Podfile
- Adicionou um novo pod ao seu Podfile
- Você quer obter a última versão de todos os pods no seu Podfile
- Você quer obter a última versão de apenas um pod no seu podfile
- Você está trabalhando com um pod de desenvolvimento e quer obter suas últimas alterações
- Você baixou o código fonte de um projeto existente que usa CocoaPods
- Você está a escrever um script para compilar um projecto num servidor de compilação
- Xcode está a reportar erros de compilação estranhos relacionados com pods
- Parte 2: Como funciona
- actualização da cápsula
- pod install
- Resumo
O guia definitivo para instalação e atualização de pods
A diferença entre pod install
e pod update
é subtil, e nem sempre é claro o que se deve usar. Mas ter uma boa compreensão do que estes comandos fazem dá-lhe um controlo muito mais fino sobre como as dependências são geridas no seu projecto, por isso vale a pena saber a diferença.
Na primeira parte deste artigo vou dar-lhe uma lista de receitas mostrando se deve executar pod install
ou pod update
em algumas situações comuns. Depois na segunda parte vou explicar porque os diferentes comandos fazem coisas diferentes, e como CocoaPods usa o arquivo Podfile.lock
para fazer tudo acontecer.
Para que estas receitas funcionem, certifique-se de que Podfile
e Podfile.lock
estão comprometidos com o controle da fonte.
Você está configurando CocoaPods em um projeto pela primeira vez e criou seu Podfile
pod install
Isto irá instalar a última versão* de cada um dos pods que você especificou no seu novo Podfile. Irá também criar um ficheiro MyProject.xcworkspace
se ainda não existir um.
Adicionou um novo pod ao seu Podfile
pod install
Isto irá instalar a última versão* de quaisquer novos pods adicionados ao seu Podfile, deixando os seus outros pods inalterados.
Se em vez disso você executasse pod update
, instalaria os novos pods e atualizaria cada um dos seus pods existentes para a sua última versão*.
Você quer obter a última versão de todos os pods no seu Podfile
pod update
Isto irá passar por todos os seus pods e certificar-se de que a última versão* de cada um está instalada no seu projeto.
Você quer obter a última versão de apenas um pod no seu podfile
pod update SomePod
Isso irá garantir que a última versão* do pod que você especificar esteja instalada, enquanto deixa os outros pods inalterados.
Você está trabalhando com um pod de desenvolvimento e quer obter suas últimas alterações
pod update MyDevelopmentPod
Isso irá garantir que a última versão do seu pod seja instalada, enquanto deixa seus outros pods inalterados.
Você baixou o código fonte de um projeto existente que usa CocoaPods
pod install
Isto irá instalar todos os pods no Podfile nas versões exatas que foram instaladas anteriormente neste corte do código fonte.
Se você tivesse que rodar pod update
em vez disso, ele instalaria a última versão* de cada um dos pods no Podfile. Isto poderia impedir o projeto de construir se as últimas versões não fossem compatíveis com outros códigos no projeto. Eu recomendaria correr pod install
para obter a compilação do código e depois actualizar os pods conforme necessário de uma forma controlada.
>
Você está a escrever um script para compilar um projecto num servidor de compilação
pod install
Isto irá instalar todos os pods no Podfile nas versões exactas que foram instaladas na versão a ser compilada. Isto é importante para uma compilação estável, pois estas são as versões contra as quais o código foi desenvolvido, e significa que cada compilação desse corte de código utilizará as mesmas versões de pod. Se em vez disso usar pod update
, a sua compilação pode potencialmente usar versões diferentes de pods cada vez que constrói.
Xcode está a reportar erros de compilação estranhos relacionados com pods
Isto ocasionalmente acontece depois de actualizar pods, ou depois de mudar entre ramos de um projecto que contém os mesmos pods em versões diferentes.
Eliminar o directório /Pods
, depois executar pod install
Isto irá reinstalar todos os pods no ficheiro Podfile nas versões exactas que foram previamente instaladas, e normalmente é suficiente para resolver quaisquer problemas que o Xcode possa encontrar com.
Por vezes as pessoas sugerem apagar o directório /Pods
e o ficheiroPodfile.lock
, depois executar pod install
. Isto irá resolver quaisquer problemas com o Xcode, mas também irá actualizar cada um dos pods no ficheiro Podfile para a sua última versão*.
Parte 2: Como funciona
A diferença entre pod install
e pod update
reside na forma como interagem com o ficheiro Podfile.lock
. Este arquivo é usado para armazenar a versão exata de cada pod que está atualmente instalado no seu projeto.
A maneira mais fácil de entender como funciona é olhar para o seguinte diagrama (disclaimer: este é um esquema simples ao invés de um diagrama técnico preciso).