Nous sums nouveaux dans git et je veux définir une balise au début de notre repository. Notre code de production est identique au référentiel de départ, mais nous avons fait des commits depuis lors. Une étiquette au début nous permettrait de “réduire” la production à un état connu et stable.
Alors, comment append un tag à un ancien commit arbitraire?
Exemple:
git tag -a v1.2 9fceb02 -m "Message here"
Où 9fceb02
est la partie initiale de l’ID de validation.
Vous pouvez ensuite les pousser en utilisant git push --tags origin master
Vous pouvez faire git log
pour afficher tous les identifiants de validation de votre twig actuelle.
Il y a aussi un bon chapitre sur le marquage dans le livre Pro Git.
Attention: Cela crée des balises avec la date du jour (et cette valeur est ce qui apparaîtra sur une page de publication de github, par exemple). Si vous souhaitez que la balise soit datée avec la date de validation, veuillez consulter une autre réponse .
# Set the HEAD to the old commit that we want to tag git checkout 9fceb02 # temporarily set the date to the date of the HEAD commit, and add the tag GIT_COMMITTER_DATE="$(git show --format=%aD | head -1)" \ git tag -a v1.2 -m"v1.2" # set HEAD back to whatever you want it to be git checkout master
La réponse de @dkinzer crée des balises dont la date est la date actuelle (lorsque vous avez exécuté la commande git tag
), et non la date de la validation. L’aide de Git pour la tag
comporte une section “Sur les balises de backdating” qui dit:
Si vous avez importé des modifications d’un autre VCS et souhaitez append des balises pour les versions majeures de votre travail, il est utile de pouvoir spécifier la date à incorporer à l’intérieur de l’object tag. de telles données dans l’object tag affectent, par exemple, la commande de balises dans l’interface gitweb.
Pour définir la date utilisée dans les objects de balise futurs, définissez la variable d’environnement
GIT_COMMITTER_DATE
(voir la discussion ultérieure sur les valeurs possibles; la forme la plus courante est “AAAA-MM-JJ HH: MM”).Par exemple:
$ GIT_COMMITTER_DATE="2006-10-02 10:31" git tag -s v1.0.1
La page “Comment étiqueter dans Git” nous montre que nous pouvons extraire l’heure de la validation HEAD via:
git show --format=%aD | head -1 #=> Wed, 12 Feb 2014 12:36:47 -0700
Nous pourrions extraire la date d’un commit spécifique via:
GIT_COMMITTER_DATE="$(git show 9fceb02 --format=%aD | head -1)" \ git tag -a v1.2 9fceb02 -m "v1.2"
Cependant, au lieu de répéter le commit deux fois, il semble plus simple de remplacer le HEAD par ce commit et de l’utiliser implicitement dans les deux commandes:
git checkout 9fceb02 GIT_COMMITTER_DATE="$(git show --format=%aD | head -1)" git tag -a v1.2 -m "v1.2"
La manière la plus simple de le faire est
git tag v1.0.0 f4ba1fc
avec f4ba1fc
étant le début du hachage du commit que vous voulez taguer et v1.0.0
étant la version que vous voulez taguer.
Utilisez la commande:
git tag v1.0 ec32d32
Où v1.0 est le nom de la balise et ec32d32 est la validation que vous souhaitez marquer
Une fois cela fait, vous pouvez pousser les tags en:
git push origin --tags
Référence:
Git (contrôle de révision): Comment puis-je marquer un sharepoint validation précédent spécifique dans GitHub?
OK , vous pouvez simplement faire:
git tag -a
Donc, si vous voulez append un tag: 1.0.2 pour valider 8ecdb02
, faites simplement:
git tag -a 1.0.2 e50f795
Aussi, vous ajoutez un message à la fin, en utilisant -m
, quelque chose comme ceci:
git tag -a 1.0.2 e50f795 -m "my message"
Après tout, vous devez le pousser vers la remote
, pour ce faire, faites simplement:
git push origin 1.0.2
Si vous avez beaucoup de balises que vous ne voulez pas mentionner une par une, faites simplement:
git push origin --tags
pour pousser toutes les balises ensemble …
En outre, j’ai créé les étapes dans l’image ci-dessous, pour plus de clarification des étapes:
Vous pouvez également dd le tag dans Hub ou utiliser des outils comme SourceTree , pour éviter les étapes précédentes, je me suis connecté à mon Bitbucket dans ce cas et à partir de là:
No tags
et cliquez sur l’icône +
:
C’est une vieille question, et les réponses ont déjà donné tout le travail, mais il y a aussi une nouvelle option qui peut être envisagée.
Si vous utilisez SourceTree pour gérer vos référentiels git, vous pouvez cliquer avec le bouton droit sur un commit et lui append un tag. Avec un autre clic de souris, vous pouvez également envoyer l’étiquette directement à la twig d’origine.