Buscar (Fetch) do Remoto com git fetch
Nesta etapa, aprenderemos como obter (fetch) as alterações de um repositório Git remoto. Imagine que você está colaborando com outras pessoas, e elas fizeram alterações no projeto. git fetch é o comando que você usa para baixar essas alterações para sua máquina local sem mesclá-las ao seu trabalho atual.
Primeiro, vamos simular ter um repositório remoto. Criaremos um simples localmente para fins de demonstração.
cd ~/project
mkdir remote-repo
cd remote-repo
git init --bare
Isso cria um repositório "bare" (sem área de trabalho), que é tipicamente usado como um repositório remoto central. Agora, vamos voltar ao nosso repositório my-time-machine e adicionar isso como um remoto.
cd ~/project/my-time-machine
git remote add origin ../remote-repo
Adicionamos um remoto chamado origin apontando para nosso repositório remoto simulado. Agora, vamos fazer uma alteração no repositório remoto e, em seguida, obter (fetch) essa alteração.
cd ~/project/remote-repo
echo "This is a remote change." > remote_file.txt
git add remote_file.txt
git commit -m "Add remote file"
Agora, de volta ao nosso repositório my-time-machine, vamos obter as alterações do remoto.
cd ~/project/my-time-machine
git fetch origin
Você deve ver uma saída indicando que o Git baixou as alterações do repositório remoto. Algo como isto:
remote: Enumerating objects: 3, done.
remote: Counting objects: 100% (3/3), done.
remote: Total 2 (delta 0), reused 0 (delta 0), pack-reused 0
Unpacking objects: 100% (2/2), 258 bytes | 258.00 KiB | elapsed 0.00s.
From ../remote-repo
* [new branch] master -> origin/master
O comando git fetch baixa os commits, arquivos e referências do repositório remoto para o seu repositório local. No entanto, ele não mescla automaticamente essas alterações em seu branch de trabalho atual. Isso permite que você inspecione as alterações antes de integrá-las.
Pense em git fetch como obter as últimas atualizações de um feed de notícias. Você vê as manchetes e resumos, mas ainda não leu os artigos completos. Você pode decidir quais artigos (alterações) deseja ler (mesclar) mais tarde.