Come utente di Git mi imbatto regolarmente nella situazione, che ho bisogno di rielaborare uno o più commit in un modo che non si adattano --amend
o rebase -i
con i commit di correzione. In genere farei qualcosa di simile
git reset HEAD~1
# hack, fix, hack
git commit -a
# argh .. do I need to retype my message?
Considero i messaggi di commit composti in modo ragionevole piuttosto seri. In genere contengono testo più grande con riferimenti e giustificazioni per la modifica. Fino ad ora, sono abbastanza infastidito sul processo lungo per recuperare il mio vecchio messaggio di commit tramite un indifferenziati git reflog
, git log
e copiare e incollare processo.
C'è un modo migliore per affrontare questo problema? E come sarebbe, se il mio comprende più di un commit?
Modifica: dopo aver riflettuto un po 'su questo, penso che quello che sto cercando sia una funzionalità simile a git stash per i messaggi di commit in cui i commit di correzione / modifica non sono appropriati.
gitk
aprire. In questo modo non dovrai nemmeno usare il reflog. In alternativa, usa rev-parse <branch>
per ottenere il tuo hash prima del ripristino e usa la risposta di ibizaman.
git reset head~1
, il tuo vecchio messaggio di commit non sarebbe solo la seconda voce inreflog
?