Existe algum comando no Git para ver (ou despejado para stdout, ou em $PAGER
ou $EDITOR
) uma versão particular de um arquivo em particular?
Você pode utilizar o git show
:
$ git show REVISION:path/to/file
Substitua REVISION pela sua revisão real (pode ser uma SHA de commit Git, um nome de tag, um nome de filial, um nome de commit relativo, ou qualquer outra forma de identificar um commit em Git)
Por exemplo, para ver a versão do arquivo src/main.c
de 4 commits atrás, use:
$ git show HEAD~4:src/main.c
Note que o caminho é da raiz do repositório, a menos que comece com ./ ou ../ para indicar um caminho relativo. Git para Windows requer cortes de avanço mesmo em caminhos relativos ao diretório atual. Para mais informações, veja a página de manual para git-show
.
Fazer isto por data parece-se com isto:
git show HEAD@{2013-02-25}:./fileInCurrentDirectory.txt
Note que HEAD@{2013-02-25}
significa "onde HEAD estava em 2013-02-25" neste repositório (utilizando o reflog), não "o último commit antes de 2013-02-25 neste ramo na história".
Se você gosta de GUIs, você pode usar gitk:
Começa com o gitk:
gitk /caminho/para/file
Para ver o arquivo para a revisão selecionada: