Come posso esaminare un changeset in mercurial senza cercare il suo genitore? In Mercurial, ciò che è l'equivalente diEsaminare un changeset in HG
git show HEAD^
Git-spettacolo dà i metadati di modifiche e il diff pure.
Come posso esaminare un changeset in mercurial senza cercare il suo genitore? In Mercurial, ciò che è l'equivalente diEsaminare un changeset in HG
git show HEAD^
Git-spettacolo dà i metadati di modifiche e il diff pure.
La domanda ha due parti. In primo luogo, come ottenere i metadati e diff per un changeset tutti in una volta:
hg log --patch --rev tip
Si può accorciare le opzioni:
hg log -pr tip
La seconda parte della domanda è come dire "il changeset genitore di X "senza cercarlo. Per questo è possibile utilizzare il numero parentrevspec extension Martin menzionato.
Dopo aver abilitato l'estensione si può fare:
hg log -pr tip^
si potrebbe aggiungere un alias al file ~/.hgrc
se non si vuole riqualificare le dita dal comando di git:
[alias]
show = log -pr
Quindi è possibile utilizzare:
Penso che tu voglia hg export cset
.
Si dovrebbe anche dare un'occhiata allo parentrevspec extension per abilitare una sintassi più simile a Git per specificare le revisioni.
L'esatto equivalente di "git show HEAD ^" sarebbe:
hg log -pr -2 # -1 (last commit), -2 - one before it, etc.
o per esempio se si vuole guardare gli ultimi 3 commit (con diff):
hg log -pr -3: # colon means start 3 commits behind and up to tip inclusive
Un po 'in ritardo con la risposta, ma ancora. :)
UPDATE: a quanto pare ora HG supporta la sintassi git così:
hg exp tip^^^..tip
o
hg log -pr tip~4
Questi sono due punti ":", non un punto e virgola ";" –
Di cattivo. Fisso. Grazie per la segnalazione – Alex
Se si desidera solo per vedere il contenuto e differenziali di un commit, utilizzare questo :
hg diff -c <the commit hash or bookmark name>
Per vedere il commit che hai controllato out (HEAD in git), procedere come segue:
hg diff -c -1
Se volete vedere il commit prima che (HEAD^in git), fare questo:
hg diff -c -2
semplice.
Senza parentrevspec, poteva semplicemente fare "-r -2" per ottenere il changeset prima della mancia, giusto? –
Sì, è vero. Questo però non funziona per qualcosa come "hg show mytag ^", giusto? –
In generale, per questo caso, "hg export" è preferito (elenca il messaggio di commit completo, ecc.). – tonfa