Como usuário do Git, eu regularmente me deparo com a situação de que preciso retrabalhar um ou mais commits de uma forma que não se encaixe em --amendou rebase -icom commits de correção. Normalmente, eu faria algo como
git reset HEAD~1
# hack, fix, hack
git commit -a
# argh .. do I need to retype my message?
Eu levo mensagens de commit compostas sensatas muito a sério. Eles normalmente contêm um texto maior com referências e justificativas para a alteração. Até agora, eu estou bastante irritado sobre o longo processo para recuperar minha antiga mensagem de confirmação através de um indiferenciados git reflog, git loge copiar e colar processo.
Existe uma maneira melhor de lidar com isso? E como seria, se meu incluir mais de um commit?
Edit: Depois de pensar um pouco sobre isso, acho que o que estou procurando é alguma funcionalidade do tipo git stash para mensagens de commit onde corrigir / corrigir commits não são apropriados.
gitkaberto. Dessa forma, você nem precisará usar o reflog. Como alternativa, use rev-parse <branch>para obter seu hash antes da redefinição e use a resposta de ibizaman.
git reset head~1, sua mensagem de commit antiga não seria apenas a segunda entrada noreflog?