Fetch
Operação que baixa atualizações do repositório remoto sem modificá-las automaticamente na sua branch local.
git fetch vs git pull
É muito comum trainees confundirem fetch e pull:
git fetchapenas consulta e baixa as novidades do GitHub para os ponteiros remotos locais (comoorigin/main). Seus arquivos locais continuam intactos.git pullfazgit fetch+git mergetudo de uma vez na sua branch atual.
Quando usar git fetch?
Use quando quiser ver o que mudou no remoto ou se surgiram novas branches de colegas antes de misturar código no seu trabalho atual.
Atualiza o conhecimento do que mudou no remoto, sem alterar os arquivos em que você está trabalhando. Ideal para comparar antes de misturar.
Além de baixar os novos commits, já aplica automaticamente na sua branch local atual (podendo gerar conflito imediato se houver edição no mesmo trecho).
# Baixa referências e commits novos do GitHub sem alterar seu trabalho atual
git fetch origin
# Ver quais commits existem em origin/main que ainda não estão na sua main local
git log main..origin/main --oneline
# Se estiver tudo certo e você quiser aplicar as atualizações agora:
git merge origin/main