Eu acho que o git fetch é o que você está procurando.
Ele puxará as alterações e os objetos sem enviá-los ao índice do repo local.
Eles podem ser mesclados posteriormente com o git merge .
Página do Homem
Editar: Explicações adicionais
Direto do curso de colisão Git-SVN link
Agora, como você obtém novas alterações em um repositório remoto? Você os busca:
git fetch http://host.xz/path/to/repo.git/
Nesse ponto, eles estão no seu repositório e você pode examiná-los usando:
git log origin
Você também pode diferenciar as alterações. Você também pode usar o git log HEAD..origin para ver apenas as alterações que você não possui em sua ramificação. Então, se você deseja mesclá-los, faça:
git merge origin
Observe que, se você não especificar uma ramificação para buscar, ela será padronizada convenientemente para o controle remoto.
A leitura da página de manual honestamente fornecerá o melhor entendimento das opções e como usá-las.
Estou apenas tentando fazer isso com exemplos e memória, atualmente não tenho uma caixa para testar. Você deve olhar para:
git log -p //log with diff
Uma busca pode ser desfeita com git reset --hard ( link ), no entanto, todas as alterações não confirmadas em sua árvore serão perdidas, bem como as alterações que você buscou.