Existe alguma forma de reverter ou desfazer a puxada do git pull para que a minha fonte/reposta chegue ao estado antigo que existia antes de fazer a puxada do git pull? Eu quero fazer isso porque ele fundiu alguns arquivos que eu não queria'não quero fazer isso, mas apenas fundir outros arquivos restantes. Então, eu quero recuperar esses ficheiros, isso é possível ? Obrigado :)
EDITAR quero desfazer o git merge para esclarecimento. Depois de ver algumas respostas, eu fiz isto.
git reflog
bb3139b... HEAD@{0}: pull : Fast forward
01b34fa... HEAD@{1}: clone: from ...name...
Agora, o que devo fazer? Fazer o git reset --hard
está bem ? Eu não'não quero estragar tudo outra vez, por isso pedindo passos detalhados ?
A execução do git pull
executa as seguintes tarefas, em ordem:
git fetch
A etapa de fusão combina ramos que foram configurados para serem fundidos na sua configuração. Você quer desfazer o passo merge, mas provavelmente não o **fetch*** (não't faz muito sentido e não deve't ser necessário).
Para desfazer o merge, use git reset --hard
para repor o repositório local para um estado anterior; use git-reflog para encontrar o SHA-1 do estado anterior e então repor para ele.
**Aviso***
Os comandos listados nesta seção removem todas as alterações não comprometidas, levando potencialmente a uma perda de trabalho:
git reset --hard
Alternativamente, reinicie para um determinado ponto no tempo, como por exemplo:
git reset --hard master@{"10 minutes ago"}
Se você tem gitk (tente executar "gitk -- tudo da sua linha de comando gitk"), it's simples. Apenas execute-o, selecione o commit que você quer reverter para (clique com o botão direito), e selecione "Resetar ramo mestre para aqui". Se você não tiver alterações não comprometidas, escolha a opção "hard".