9. Utilisation Git#
« Tout devrait être rendu aussi simple que possible, mais pas plus simple »
— Albert Einstein
Git fonctionne nativement en ligne de commande sur votre machine locale, mais sa véritable puissance se révèle lorsque vous synchronisez votre code avec des plateformes d'hébergement cloud telles que GitHub, GitLab, Bitbucket ou Azure Repos (notre cas !).
Lorsque votre code est hébergé sur ces plateformes, on parle de dépôt distant (ou remote). Ce dépôt distant devient le référentiel centralisé accessible à toute l'équipe depuis le cloud.
Bien que Git opère localement via la ligne de commande, les plateformes d'hébergement Git comme Azure Repos étendent ses capacités en stockant les différents projets dans le cloud. Ces services transforment les dépôts locaux en dépôts distants collaboratifs, enrichis de fonctionnalités d'équipe et d'outils CI/CD intégrés.
Organisation de l'espace de travail
Avant d'utiliser Git, organisez votre espace de travail en créant un répertoire dédié qui centralisera tous vos projets versionnés. Créez un dossier nommé "repos" sur votre machine. Ce répertoire principal hébergera l'ensemble de vos dépôts Git locaux, facilitant ainsi la navigation entre projets et garantissant un environnement de développement bien structuré.
# Création d'un dossier "repos"
mkdir repos
# Aller dans "repos"
cd repos
Pour transformer n'importe quel dossier en dépôt Git fonctionnel, utilisez la commande git init. Cette opération fondamentale va créer l'infrastructure de versionnement en générant un répertoire caché .git qui contient toute la mécanique Git : historique des commits, configuration locale, références des branches, et métadonnées du projet.
# Aller dans repos
cd ~/repos
# Créer un nouveau projet
mkdir mon-projet-python
cd mon-projet-python
# Initialiser Git DANS le projet
git init
On peut vérifier l’existence du fichier caché avec la commande ls –a :
ls -a
Configuration de l'identité utilisateur
Avec votre dépôt Git maintenant initialisé, vous disposez de l'infrastructure nécessaire pour versionner votre code. Cependant, avant de créer votre premier commit, Git a besoin de savoir qui vous êtes. Cette identification constitue la base de la traçabilité et de la collaboration dans tout projet versionné.
git config --global user.name "Votre Nom Complet"
git config --global user.email "votre.email@radio-canada.ca"
Validez que votre configuration a été correctement enregistrée en consultant les paramètres globaux :
git config --global --list
Processus de sauvegarde
Une fois votre configuration terminée, passons à l'utilisation concrète de Git. L'étape suivante consiste à comprendre comment sauvegarder efficacement vos modifications en utilisant le système unique de Git qui sépare la préparation des fichiers de leur validation définitive.
1. Zone de staging : préparez vos changements
La zone de staging est comme une "salle d'attente" où vous rassemblez les modifications avant de les sauvegarder définitivement. Cette étape intermédiaire vous permet de choisir précisément ce qui sera inclus dans votre prochain commit.
git add contact.html
git add styles/contact.css
Ajout global (avec prudence) :
git add .
2. Commit : sauvegardez définitivement
Le commit transforme les fichiers en staging en un point de sauvegarde permanent dans l'historique.
git commit -m "Ajoute formulaire de contact avec validation email"
Commandes Git essentielles
Dans 90 % des situations, ces 5 commandes couvriront presque tous vos besoins :
- git status – Votre tableau de bord
git status
- git add – Sélectionner vos changements
git add fichier.py
git add src/ # Ajouter un dossier entier
- git commit – Sauvegarder définitivement
git commit -m "Ajoute validation des données utilisateur"
- git pull – Synchroniser avec l'équipe
git pull origin main
- git push – Partager votre travail
git push origin main
Enrichissement du workflow
git branch # Liste toutes les branches locales
git branch -d feature-login # Supprime une branche fusionnée
git checkout -b nouvelle-feature # Crée et bascule sur une nouvelle branche
git switch main # Changer de branche
git log --oneline
git log --graph
git diff
git merge feature-branch
git rebase main
git stash
Bonnes pratiques pour un workflow efficace
Chaque commit doit représenter une seule unité logique de changement. Au lieu d'un commit géant "Refonte complète du module", préférez plusieurs commits ciblés :
- "Extrait la logique de validation dans une fonction séparée"
- "Ajoute tests unitaires pour le validateur"
- "Optimise les performances de la validation"
Une routine de travail structurée avec Git permet de collaborer efficacement tout en maintenant un
historique propre et compréhensible. Commencez chaque session par un git pull
afin de
synchroniser votre environnement avec les dernières modifications du projet. Ensuite, concentrez-vous
sur une fonctionnalité précise et utilisez régulièrement git status
pour suivre l’état de
vos fichiers. Commitez vos changements par petites étapes cohérentes, chacune représentant une action
logique. Une fois le travail terminé, utilisez git push
pour partager vos contributions
avec l’équipe.
Git excelle en versionnement local, mais sa vraie puissance émerge dans la collaboration cloud. Les plateformes d'hébergement – GitHub, GitLab, Azure Repos, Bitbucket – transforment votre travail individuel en environnement collaboratif.
Avant d'explorer les git remote et workflows collaboratifs, consultez ces aide-mémoires :
- Aide-mémoire GitHub : Référence visuelle complète
- Aide-mémoire Azure DevOps : Adapté à notre environnement
Prochaine étape : Transformation de votre maîtrise Git locale en workflows collaboratifs via les dépôts distants.