Eu tenho dois arquivos diferentes em diferentes ramos. Como posso diferenciá-los em um comando?
Algo como
# git diff branch1/foo.txt branch2/foo-another.txt
Eu poderia verificar o outro arquivo, diferenciá-lo e restaurá-lo, mas essa é uma solução bastante suja.
Respostas:
Você também pode usar caminhos relativos:
fonte
git help diff
. A propósito, esses nomes não precisam ser nomes de ramificação antes dos dois pontos, mas podem ser qualquer tipo de referência de confirmação (por exemplo, valores SHA-1).git difftool
e, em seguida, soltar obranch2:
e que permitirá que você editar um arquivo na árvore de trabalho atual (para trazer sobre as mudanças debranch1
)Sidenote: não há necessidade de caminhos completos; você pode começar
./
por caminhos relativos. Às vezes, pode ser útil.fonte
Existem várias maneiras de comparar arquivos de duas ramificações diferentes. Por exemplo:
Se o nome for o mesmo ou diferente:
Exemplo:
Somente se o nome for o mesmo e você desejar comparar seu diretório de trabalho atual com alguma ramificação:
Exemplo:
Você pode verificar esta resposta:
Compare um arquivo de duas ramificações diferentes no Git
fonte
Resposta off-topic - ver comentários
Apenas para adicioná-lo, acho uma sintaxe muito direta:
Também funciona com referências relativas, como por exemplo:
fonte
Você pode especificar um início e um intervalo
git diff
a serem aplicados. O intervalo é indicado com a..
notação.fonte