Occasionalmente inserirò nella modalità di risoluzione dei problemi e commetterò/spingo un numero di commit piccoli ma separati con un commento del tipo "Risoluzione dei problemi dello < qualcosa di > durante la distribuzione su Heroku". Vorrei utilizzare lo stesso commento per ogni commit senza doverlo ridigitare. È possibile?C'è un modo per riutilizzare il commento precedente su un commit Git?
risposta
In un primo momento, ho risposto:
immagino
git commit --reuse-message=HEAD
lo fa
poi ho pensato che non è quello che si voleva e eliminato. Poi la vita ha raggiunto e ottenuto AFK per un paio d'ore. In ogni modo, nonostante una risposta essendo già stato accettato, avrei suggerito:
$ git config alias.troubleshoot '!troubleshoot() { git add -u && git commit -m "Troubleshooting the $1 during deployment to Heroku."; }; troubleshoot'
E lo si utilizza nel modo seguente:
- modificano i file esistenti
- (eventualmente aggiungere file non monitorate)
Registra modifiche (e eventualmente nuovi file) con "Trou bleshooting the foo durante la distribuzione a Heroku. " come messaggio di commit.
Non sono sicuro di come si possa avere un determinato set di commit Git utilizzare l'ultimo commento git inserito, ma è possibile impostare un messaggio di commit predefinito. Questo potrebbe fare il trucco fintanto che non annulli il messaggio di commit predefinito una volta che hai finito con tutti i commit necessari per usare quel messaggio.
Ecco come procedere impostando un messaggio di commit predefinito. Innanzitutto, inserisci il messaggio di commit desiderato in un file, chiamalo ~/LastCommitMessage.txt
. Quindi, specificare questo come predefinita (globale) messaggio di commit in questo modo:
$ git config --global commit.template ~/LastCommitMessage.txt
Si potrebbe restringere il campo non usando --global e con qualcos'altro.
È possibile accedere facilmente a tutte le impostazioni git aprendo il file .gitconfig
che si trova nella propria directory home. Apri quel file ed elimina l'impostazione precedente per disinserirla una volta che hai finito con tutti i tuoi commit.
Dalla documentazione git-commit(1) di comando,
-C <commit>
--reuse-message=<commit>
Take an existing commit object, and reuse the log message and the authorship
information (including the timestamp) when creating the commit.
-c <commit>
--reedit-message=<commit>
Like -C, but with -c the editor is invoked, so that the user can further edit
the commit message.
E 'quindi possibile utilizzare,
git commit --reuse-message=HEAD
Aggiornamento:
Potrebbe anche essere necessario utilizzare l'opzione --reset-author
,
--reset-author
When used with -C/-c/--amend options, declare that the authorship of the
resulting commit now belongs of the committer. This also renews the author
timestamp.
Ah, quindi questo non sta tirando dal mio ultimo commento di commit? – Seth
Pensandoci sopra ... Se scrivo localmente 'git commit -a --reuse-message = HEAD', come potrebbe tirare qualcosa di diverso dal mio più recente commento di commit? Come si inserirebbe un commento di un altro membro del team con quel comando e contesto? – Seth
Mi dispiace aver frainteso la tua domanda, Sì, sta tirando dal tuo messaggio di commit più recente in base a dove punta il tuo HEAD. Se hai un altro commento che interferisce tra quello nuovo e quello precedente, prenderà quindi il messaggio di questo commento. –
- 1. Modificare un commit che non era il commit precedente
- 2. modifica del commento git di un commit premuto
- 3. Git: sposta HEAD di nuovo a un commit precedente
- 4. Come posso spingere un commit Git senza uno precedente?
- 5. Combina locale Git commit in un commit per git-svn
- 6. Come impostare la directory di lavoro su un commit precedente?
- 7. Riferendosi al commit precedente/successivo in git?
- 8. GIT: Come eseguire il checkout di un file da un commit precedente senza sovrascrivere quello corrente?
- 9. Rimozione di commit Git su un ramo
- 10. Come posso cancellare un commit su git
- 11. Come trovare il commit unione precedente
- 12. git commit comment per file
- 13. In Git, c'è un modo per ottenere il nome "amichevole" per un commit arbitrario?
- 14. Come ripristinare un commit SVN precedente?
- 15. git rebase un singolo commit
- 16. Come fare riferimento a un commit precedente nel messaggio di commit git
- 17. Modifica di un commit Git su un repository condiviso
- 18. git - sposta il "tag" del ramo su un altro commit?
- 19. Git: sposta il commit specifico su un altro ramo
- 20. Come nascondere il mio commit precedente?
- 21. Git - Cos'è un ID commit git?
- 22. Ripristino di un commit precedente in Git per visual studio 2012
- 23. Intellij git revert un commit
- 24. Riutilizzare? Su un DBI prepara
- 25. Git: estrarre un file da un commit precedente e modificarlo a HEAD
- 26. git: spingere un singolo commit
- 27. Scopri se esiste un commit particolare su un ramo git
- 28. Impossibile reimpostare un file su un commit specifico utilizzando Git
- 29. Come ripristinare il progetto su un commit precedente in Android Studio
- 30. git: modo migliore per git revert senza commit revertato aggiuntivo
Questa è una soluzione più sicura al problema ed è anche una soluzione per il problema più ampio, Come posso riutilizzare facilmente i commenti comuni di commit git?Il fatto che sia possibile utilizzare i parametri aiuta a garantire che il registro non si riempia di commenti inutili. Vedi [Alias] (https://git.wiki.kernel.org/index.php/Aliases) per maggiori informazioni. – Seth