Gestion des étiquettes et configuration avancée dans Git

Création et consultation des étiquettes

Pour initialiser une étiquette, commencez par naviguer vers la branche cible.

git checkout <nom_branche>
git tag <nom_etiquette>
git tag v1.0  # Exemple avec une version</nom_etiquette></nom_branche>

Lister toutes les étiquettes existantes avec :

git tag

Par défaut, les étiquettes sont liées au commit le plus récent. Pour marquer un commit antérieur, retrouve d'abord son identifiant via l'historique.

git log --oneline --abbrev  # Afficher les commits de façon condensée
git tag <nom_etiquette> <id_commit>  # Appliquer l'étiquette sur un commit spécifique</id_commit></nom_etiquette>

Les étiquettes sont triées alphabétiquement. Obtenir les informations d'une étiquette :

git show <nom_etiquette></nom_etiquette>

Pour ajouter un message descriptif à une étiquette annotée :

git tag -a <nom_etiquette> -m "Description complète" <id_commit>
git show <nom_etiquette>  # Vérifier la description ajoutée</nom_etiquette></id_commit></nom_etiquette>

Chaque étiquette est attachée à un commit unique. Si ce commmit apparaît sur plusieurs branches, l'étiquette sera accessible depuis chacune d'elles.

Manipulation des étiquettes

Supprimer une étiquette de votre dépôt local :

git tag -d <nom_etiquette></nom_etiquette>

Les étiquettes ne sont pas synchronisées automatiquement avec le serveur distant. Pour en partager une :

git push origin <nom_etiquette>  # Pousser une étiquette individuelle
git push origin --tags  # Pousser toutes les étiquettes</nom_etiquette>

Si une étiquette est déjà sur le serveur, la suppression nécessite deux étapes :

git tag -d <nom_etiquette>
git push origin :refs/tags/<nom_etiquette></nom_etiquette></nom_etiquette>

Fichier .gitignore et règles d'exclusion

Le fichier .gitignore sert à exclure des fichiers du versionnage. Principes recommandés :

  • Ignorer les fichiers temporaires générés par le système, tels que les prévisualisations.
  • Ignorer les artefacts de compilation, par exemple les fichiesr .class produits par Java.
  • Ignorer les fichiers de configuration contenant des secrets, comme les identifiants.

Forcer l'ajout d'un fichier normalement ignoré :

git add -f <nom_fichier></nom_fichier>

Diagnostiquer les règles qui ignorent un fichier :

git check-ignore -v <nom_fichier></nom_fichier>

Exemple de configuration .gitignore :

# Exclure les fichiers cachés
.*
# Exclure les fichiers compilés
*.class
# Inclure des exceptions
!.gitignore
!<nom_fichier></nom_fichier>

Création d'alias pour les commandes Git

Les alias simplifient les commandes fréquentes. L'option --global étend la portée à tous les dépôts de l'utilisateur.

git config --global alias.st status
git config --global alias.co checkout
git config --global alias.ci commit
git config --global alias.br branch

Définir un alias pour afficher le dernier commit :

git config --global alias.last 'log -1'

Alias avancé pour un historique visuel :

git config --global alias.lg "log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit"

Les configurations sont stockées dans .git/config par dépôt, et dans ~/.gitconfig au niveau global.

Étiquettes: Git tags gitignore aliases version-control

Publié le 22 juillet à 21h39