Outils pour utilisateurs

Outils du site


gestion_configuration:git:tags

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
gestion_configuration:git:tags [2016/11/21 22:54] sgariepygestion_configuration:git:tags [2022/02/02 00:42] (Version actuelle) – modification externe 127.0.0.1
Ligne 1: Ligne 1:
-====== Git Tags ====== +====== Gestion des tags ======
  
 +[[gestion_configuration:git:toc|Retour à Git]]
  
  
Ligne 10: Ligne 10:
   $ git tag nom-du-tag   $ git tag nom-du-tag
  
 +Ajoute un tag annoté, par exemple pour une version 5.2.1 :
  
 +  $ git tag -a 5.2.1 -m "5.2.1"
 ====== Push tag ====== ====== Push tag ======
  
Ligne 31: Ligne 33:
      
   $ git push origin :refs/tags/release01   $ git push origin :refs/tags/release01
 +
 +Aussi on peut faire:
 +
 +  $ git push --delete origin release01
 +
  
  
 [[https://confluence.atlassian.com/bitbucket/how-do-i-remove-or-delete-a-tag-from-a-git-repo-282175551.html|Source]] [[https://confluence.atlassian.com/bitbucket/how-do-i-remove-or-delete-a-tag-from-a-git-repo-282175551.html|Source]]
 +
 +
 +====== Chercher un commit par tag ======
 +
 +On se sert de ''log'' pour se faire.  Le ''4.10'' est le nom du tag:
 +
 +  $ git --no-pager log -1 4.10 --pretty="%h - %an : %s (%ci)"
 +
 +
 +
 +
 +====== Signer des tags ======
 +
 +Utiliser ''gpg2'':
 +[[securite:gnupg|GNUPG]]
 +
 +
 +
 +Installer ''gpg2'':
 +
 +  $ sudo apt-get install gnupg2 -y  
 +
 +Dire à Git d'utiliser ''gpg2'':
 +  $ git config --global gpg.program gpg2
 +
 +
 +Assigner une clé à Git:
 +
 +  $ gpg2 --list-keys 
 +  /home/sgariepy/.gnupg/pubring.gpg
 +  ---------------------------------
 +  pub   2048R/956F5465 2017-05-03 [expires: 2018-05-03]
 +  uid                  Stéphane Gariépy <sgariepy@exmaple.com>
 +  sub   2048R/DD21F2BB 2017-05-03 [expires: 2018-05-03]
 +  
 +
 +
 +  $ git config --global user.signingkey 956F5465
 +
 +
 +Quand on crée un tag, utiliser le ''-s'' au lieu du ''-a'':
 +  $ git tag -s 1.0.0 -m "1.0.0"
 +  $ git push origin 1.0.0
 +
 +
 +Source : [[https://git-scm.com/book/tr/v2/Git-Tools-Signing-Your-Work|Signing Your Work]]
 +
 +
 +
 +====== Obtenir le SHA d'un commit avec un tag ======
 +
 +
 +  $ git rev-list -n 1 <nom-du-tag>
 +
 +
 +Par exemple:
 +  $ git rev-list -n 1 v1.0.52
 +  c14400a7f3b633516b2d38c3550de93d4fad097a
 +
 +
 +====== Obtenir les tags précédents ======
 +
 +Pour obtenir les 10 tags précédents, on peut faire:
 +
 +  $ git for-each-ref refs/tags --sort=-taggerdate --format='%(refname)' --count=10
 +  refs/tags/v1.1.2
 +  refs/tags/v1.1.1
 +  refs/tags/v1.1.0
 +  refs/tags/v1.0.3
 +  refs/tags/v1.0.2
 +  refs/tags/v1.0.1
 +  refs/tags/v1.0.0
 +  refs/tags/v0.9.10
 +  refs/tags/v0.9.9
 +  refs/tags/v0.9.8
 +  refs/tags/v0.9.7
 +
 +
 +====== Avoir que les tags existants sur remote ======
 +
 +Si quelqu'un supprime certains tags sur ''origin'' et que quelqu'un d'autre les a localement, il peut les repousser et les recréer sur ''origin'' Il faut alors supprimer tous les tags localement et aller chercher ceux sur ''origin''.
 +
 +  $ git tag -l | xargs git tag -d
 +  $ git fetch --tags
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
gestion_configuration/git/tags.1479765261.txt.gz · Dernière modification : 2022/02/02 00:43 (modification externe)