Quando mudanças de vários ramos são necessárias para testar a integração com outro desenvolvimento paralelo, pode se tornar difícil visualizar o histórico de um ramo específico que está sendo trabalhado. Estarei me referindo a três ramos mestre , recurso e integração , cuja contagem e nomenclatura são para fins de simplicidade.
Porque você precisa obter as alterações do master e do recurso em seu branch. Para fazer isso, você deve fazer o seguinte:
git checkout integration
git merge origin/master
git merge origin/feature
Agora, se você fizer:
git log origin/master..
Você descobrirá que tem o histórico de mudanças na ramificação de integração e na ramificação de recurso interligados. Freqüentemente, isso será o que você deseja ver (já que se você fosse fundir este branch em qualquer outro branch, estes seriam o conjunto de commits que seriam fundidos).
No entanto, pode ser útil ver quais mudanças foram feitas apenas no branch de integração .
Para fazer isso, você pode usar um recurso do git log para excluir commits de outros branches.
git log --no-merges --oneline ^origin/feature origin/master..HEAD
Observe que é possível expandir isso para um número arbitrário de ramificações simplesmente negando as ramificações que foram mescladas.