Porque usar o git fetch?

Por que usar o git fetch invés do git pull? Se depois terei que fazer o Merge caso eu use o git fetch.

Existe algum situação para que eu use o git fetch?

git pull por debaixo dos panos executa um fetch, o propósito dele é deixar o repositório local ciente de que houveram modificações no repositório remoto, enquanto que o pull baixa as alterações contidas no repositório remoto para o repositório local.

Eles tem propósitos diferentes embora possamos obter o mesmo resultado no final (com pequenas diferenças no fluxo).

1 curtida

Todo mundo responde a mesma coisa. Eu gostaria de saber em qual ocasião se usa o git fetch invés do git pull.

Basicamente se você tem a intenção apenas de validar se existem mudanças no repositório remoto usa fetch, se quer atualizar seu repositório local com as mudanças do remoto usa pull.

Vc, pessoa, eu não sei quando usaria. Mas ferramentas como o VS Code usam para te informar de que há mudanças e te dar a oportunidade de decidir o que fazer com esta informação.

Recentemente tive numa situação que não conseguia fazer o git push, tentei fazer o git pull mais não deu certo, quando fiz o git fetch depois consegui fazer meu push

Normalmente isso acontece (baseado na experiência que eu tenho com git) quando existe uma certa “discrepância” da versão do seu branch no repositório local em relação ao remoto, isso pode acabar barrando a execução de um push para garantir a preservação do histórico de alterações no remoto de forma linear.

Mas cada caso é um caso, tudo depende de como estão suas configurações locais e as configurações do repositório remoto.

Vc usa quando quiser fazer o atualizar um ou mais branches locais sem que interfira no seu diretório de trabalho atual.