Usando o git, como volto ao primeiro commit e depois passo pelo histórico?

5

Eu clonei um projeto do Github e agora gostaria de reverter para o primeiro commit, como eu faria isso? Além disso, quando eu voltar ao primeiro commit, como vou para o segundo commit, e depois do segundo para o terceiro e assim por diante.

    
por new_to_git 12.04.2012 / 09:59

3 respostas

6

Você pode fazer o check-out de qualquer revisão, fornecendo seu código SHA1:

git checkout <SHA1>

Um script auxiliar chamado git-walk foi feito para isso. Mesmo que você não use o script explícito, veja o código (muito simples) para ver o que é feito.

    
por 12.04.2012 / 10:13
0

para todos os arquivos, tente

git show HEAD 

para um arquivo específico, tente

git log -p filename
    
por 12.04.2012 / 11:05
0

Adaptado de a resposta para Qual é o oposto de git diff HEAD^ ? :

Primeiro, para tornar sua vida mais fácil mais tarde, você pode configurar um alias local para encontrar o commit inicial e o filho de um commit particular (Nota: isso nem sempre é possível devido à forma como DAG funciona)

git config --local alias.first-sha "!git rev-list --all        | tail -n 1"
git config --local alias.child-sha "!git rev-list HEAD..master | tail -n 1"

Então você pode verificar o commit inicial e percorrer o código verificando cada child-sha:

git checkout $(git first-sha)
git checkout $(git child-sha)

Se você é novo no git, sugiro ler um artigo que escrevi sobre Percorrer os Commits que detalha mais sobre cada um dos comandos sendo usados

    
por 25.06.2014 / 17:49

Tags