Oi, Dayane! Tudo bem?
O comando git pull
é uma combinação de git fetch
e git merge
, quando executamos git pull
, o Git busca (fetch) as alterações do repositório remoto e então tenta mesclar (merge) com o nosso branch atual. Somado a isso, podemos também destrinchar as opções mencionadas da seguinte forma:
git config pull.rebase false
: é o comportamento padrão do git pull
. Ele faz um git fetch
seguido de um git merge
de forma que se houver conflitos entre o branch remoto e o local, teremos que resolvê-los manualmente.
git config pull.rebase true
: Este comando muda o comportamento padrão para fazer um git fetch
seguido de um git rebase
, o que significa que, em vez de criar um novo commit de merge, o Git tentará aplicar seus commits locais não empurrados em cima dos commits buscados. Isso pode resultar em um histórico mais limpo, mas pode ser mais complicado se tivermos muitos conflitos.
git config pull.ff only
: Esta configuração faz com que o Git recuse fazer um pull a menos que possa ser resolvido como um fast-forward. Fast-forward é quando, em vez de criar um novo commit de merge, o Git simplesmente move seu ponteiro de branch para o commit mais recente, o que só é possível se não houver alterações no branch local que não estejam no remoto.
Espero ter ajudado!
Um forte abraço e bons estudos!
Caso este post tenha te ajudado, por favor, marcar como solucionado ✓