C'è un modo per configurare hg com
in modo che nel file di messaggi di commit che si apre nell'editor esterno, invece di mostrare solo quali file sono stati modificati (nelle linee HG:
) in realtà mostra il diff completo? Preferirei visualizzare l'output e comporre il mio messaggio di commit simultaneamente dalla comodità del mio editor di testo invece di fare hg diff
sulla riga di comando separatamente in anticipo.Come posso ottenere mercurial per mostrare il diff durante `hg com`?
risposta
TortoiseHg fa questo fuori dalla scatola: un pannello superiore per il messaggio di commit e sotto, un pannello di sinistra che elenca i file interessati e un pannello di destra che mostra le differenze, una dopo l'altra.
Mercurial non ha questa funzione incorporata, ma è facile da simulare nell'editor (come lanciato da commit).
Ecco un esempio utilizzando VIM: https://www.mercurial-scm.org/wiki/DiffsInCommitMessageInVIM
Lo script hgeditor https://www.mercurial-scm.org/hg/hg-stable/raw-file/tip/hgeditor fornisce ulteriori esempi.
Il jist di base è:
- a editor di lancio corsa
hg diff
reindirizzamento a un file temporaneo - hanno il carico editore sia il file messaggio di commit e il diff
A partire dal 2016, è possibile farlo con l'opzione di configurazione committemplate
. Aggiungendo quanto segue a un file hgrc
includerà il diff nella finestra dell'editor in linea mentre si digita il messaggio di commit.
[committemplate]
changeset = {desc}\n\n
HG: {extramsg}
HG: user: {author}\n{ifeq(p2rev, "-1", "",
"HG: branch merge\n")
}HG: branch '{branch}'\n{if(currentbookmark,
"HG: bookmark '{currentbookmark}'\n") }{subrepos %
"HG: subrepo {subrepo}\n" }
{splitlines(diff()) % 'HG: {line}\n'}
Vedi hg help hgrc
e la ricerca di committemplate
per ulteriori informazioni.
- 1. Mercurial: elenca i file "hg diff"
- 2. Come lasciare che Mercurial mostri "hg out --patch" diff come diff visivo?
- 3. Come ottenere mercurial per notare i file aggiunti nelle sottodirectory? (hg st, hg add)
- 4. Quando si utilizza Mercurial HG, come ottenere l'ultimo codice?
- 5. Come posso ottenere la revisione attuale del mercurial senza chiamare hg?
- 6. Come ottenere modifiche Mercurial quando ho già usato hg clone?
- 7. Ottenere svn diff per mostrare la funzione C++ durante il commit
- 8. Collisione ripiegabile con il caso Mercurial HG?
- 9. Abilita completamento scheda bash per Mercurial (hg)
- 10. Mercurial hg serve più repository
- 11. Mercurial: applica "hg pull -u" prima di "hg commit"
- 12. Come posso ottenere 'hg pull' per onorare la sezione degli utenti fidati nel mio .hgrc?
- 13. Libreria HG mercurial per Node.js per repository locali
- 14. Come mostrare git diff in Jenkins
- 15. Hosting Mercurial HG tramite VisualSVN Server
- 16. Mercurial "hg status" e relativi percorsi
- 17. Esaminare un changeset in HG
- 18. Importa cronologia TFS in Mercurial (hg)
- 19. Comando mercuriale per combinare hg pull; hg up
- 20. Mercurial (hg) esegue il commit solo di determinati file
- 21. Come posso riparare un repository rotto da hg unshelve?
- 22. Come posso annullare più commit in Mercurial?
- 23. Come posso resettare --hard HEAD su Mercurial?
- 24. hg unshelve non funziona
- 25. Come visualizzare i comandi Mercurial emessi da Tortoise HG?
- 26. Come mostrare il diff specifica ad un ramo chiamato in mercuriale
- 27. Come annullare hg init?
- 28. Come posso formattare l'output "hg log" mercurial facilmente come JSON analizzabile?
- 29. Come posso ottenere git per visualizzare le modifiche in vim come hg fa con lo script heditor?
- 30. Come posso ottenere hg per richiedere il mio nome utente/password di autenticazione HTTP su cygwin/windows?
solo per aggiungere alla domanda: OP sta cercando un equivalente a '$ git commit -v' –