2010-09-21 3 views
3

Nous venons de commencer à utiliser hg et nous utilisons des balises de base pour les modules courants de notre système. J'ai quelques questions sur le fonctionnement des tags.Utilisation de balises de base dans Mercurial

  • (# 1) Lors de l'ajout d'une étiquette en utilisant la commande suivante, il ne vérifie automatiquement dans le fichier .hgtags pour moi?

    tag hg MY_TAG

  • Lorsque j'ajoute un tag pour la première fois, il ajoute une ligne au fichier de .hgtags. Quand je fais un -f (force) sur la commande de balise, cela ajoute une autre entrée au fichier. Ensuite, lorsque je le supprime, il ajoute 2 autres lignes au fichier .hgtags. En fin de compte mon dossier finit par ressembler à ceci:

af9e9bf4cf004a7fab4f911e95d1002579fd851a MY_TAG //from initial tag 
af9e9bf4cf004a7fab4f911e95d1002579fd851a MY_TAG //from delete (1/2) 
0000000000000000000000000000000000000000 MY_TAG //from delete (2/2) 
4611114976f02dd0d4f8ec9e84266dcea161cd3f MY_TAG //from tag after pull 
0426c9e6e0ccf01e6d18d85420466d1edd1bff1f MY_TAG //from forced tag 
  • (# 2) Pourquoi faut-il continuer à ajouter des lignes au fichier .hgtags? Quand je fais une balise de base, je me soucie seulement d'avoir une seule entrée dans le fichier. Devrais-je me soucier de cette météorisation? Dois-je gérer manuellement le fichier .hgtags pour qu'il fonctionne de cette façon?

  • (# 3) De plus, les lignes de suppression doivent-elles rester contiguës dans le fichier?

  • (# 4) Est-ce que le fichier est lu de haut en bas, ou est-ce que Mercurial trouve réellement le dernier changeset et l'utilise quand je passe à un tag?

Répondre

5
  1. Oui, il vérifie automatiquement pour vous, avec un message généré à cet effet.
  2. Mercurial utilise la dernière balise dans le fichier .hgtags. Pour conserver l'historique intact, il ajoute simplement des lignes.
  3. Les suppressions indiquent simplement que la balise donnée correspond à la révision "nulle", ce qui signifie qu'elles n'existent pas.
  4. .hgtags est lu de haut en bas. Quelle que soit la dernière ligne qui correspond à MY_TAG est utilisé comme balise.

Il n'y a vraiment aucune raison de ne pas modifier le fichier de balises si vous devez nettoyer quelque chose. En général, les balises ne doivent pas bouger, et si vous souhaitez les déplacer fréquemment, vous pouvez chercher dans bookmarks à la place.