Se você quiser que o git faça um rebase em vez de um merge ao fazer o pull, você pode executar o git pull assim:
git pull --rebase
Em vez de digitar o código acima (ou criar um alias para ele), você pode dizer ao git para rebase automaticamente ao fazer pull.
Em git> = 1.7.9:
git config --global pull.rebase true
Em git <1.7.9:
git config --global branch.autosetuprebase always
O último tem o efeito de adicionar automaticamente branch.<name>.rebase true
para cada branch local retirado que está rastreando um branch upstream para o arquivo de configuração do repositório.
Observe que se você tiver ambas as opções definidas (não realmente recomendado), então branch.<name>.rebase true
isso é adicionado automaticamente para cada ramificação tem precedência sobre o global pull.rebase true
.