Como comparar duas tags com git?


435

Gostaria de fazer uma diferença entre duas tags e alterações confirmadas entre essas duas tags. Você poderia me dizer o comando?

Respostas:


744
$ git diff tag1 tag2

ou mostre o log entre eles:

$ git log tag1..tag2

às vezes pode ser conveniente ver apenas a lista de arquivos que foram alterados:

$ git diff tag1 tag2 --stat

e, em seguida, observe as diferenças para um arquivo específico:

$ git diff tag1 tag2 -- some/file/name

Uma tag é apenas uma referência ao commit mais recente 'nessa tag', para que você esteja fazendo uma diferença nas confirmações entre elas.

Além disso, uma boa referência: http://learn.github.com/p/diff.html


2
@kaiser lol! btw, eu gostaria de adicionar esta dica para comparar diretórios inteiros de dentro git guiem "tools / add" like git difftool -d $REVISION! e para vincular esta resposta também
Aquarius Power

Existe uma maneira de fazer o git logcomando mostrar apenas confirmações adicionais, não confirmadas compartilhadas?
CMCDragonkai

O @CMCDragonkai, que é esse comando, mostra as confirmações adicionais no tag2 desde o tag1.
gauteh

2
Também é útil: simplesmente git diff tag1fornece diferenças entre tag1 e diretório de trabalho; git diff tag1 HEADdiferenças entre tag1 e confirmação mais recente.
ChrisV

4
Certifique-se de fazer git pull --tagsprimeiro.
edburns


2

Para uma representação visual lado a lado, eu uso git difftoolcom openDiffset para o visualizador padrão.

Exemplo de uso:

git difftool tags/<FIRST TAG> tags/<SECOND TAG>

Se você estiver interessado apenas em um arquivo específico, poderá usar:

git difftool tags/<FIRST TAG>:<FILE PATH> tags/<SECOND TAG>:<FILE PATH>

Como nota lateral, os tags/<TAG>s podem ser substituídos por <BRANCH>es se você estiver interessado em difframificar.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.