web-dev-qa-db-fra.com

Comment obtenir la révision actuelle de l'ensemble de modifications Mercurial et non le hachage

J'ai besoin que l'ensemble de modifications Mercurial actuel soit renvoyé dans un service Web très simple, juste le numéro de révision incrémenté et non le hachage. Je sais que je peux utiliser

 hg --cwd C:\repos\MyRepo parent

qui me rendra

changeset:   730:9d347e4a8d47
tag:         tip
user:        Simon Martin <[email protected]>
date:        Tue Jun 12 15:39:45 2012 +0100
summary:     Fixed defect #244...

Ce dont j'ai besoin, c'est juste la partie 730 de l'ensemble de modifications. Le but est de pouvoir écrire un service web très simple qui retournera cette valeur - celle-ci sera ensuite récupérée par une autre application et affichée dans le pied de page pour donner une référence rapide sur laquelle la révision locale est en cours. Le processus de test peut alors faire référence à cette "construction" qui peut ensuite être utilisée pour l'identifier.

38
Simon Martin

Vous pouvez afficher le numéro de révision local du parent actuel de la copie de travail en utilisant:

hg identify --num

Notez que cela génère un + suffixe en cas de modifications locales. Ajoutez un -r . option pour éviter cela.

Vous pouvez utiliser le -r option pour obtenir le numéro de révision local pour d'autres révisions également. Par exemple, pour récupérer l'ID du dernier ancêtre balisé:

hg id -n -r "ancestors(.) and tag()"
52
Laurens Holst

Vous pouvez utiliser un modèle personnalisé pour le hg parent commande.

Cela devrait obtenir ce que vous voulez:

hg parent --template "{rev}"
14
Steve Kaye