🔀 Git — Gérer ses versions
Git est un système de gestion de versions : il enregistre l'historique complet des modifications de vos fichiers. En cas d'erreur, vous pouvez revenir à une version précédente. Il facilite aussi la collaboration à plusieurs sur un même projet.
Installation
sudo apt install git
Sous Windows : gitforwindows.org
Configuration initiale
git config --global user.name "Papinou"
git config --global user.email "papinou@exemple.com"
git config --global core.editor nano
# Vérifier
git config user.name
git config user.email
Les concepts clés
- Dépôt (repository) : dossier suivi par Git (contient un sous-dossier caché
.git) - Commit : une "photo" de l'état de vos fichiers à un instant donné
- Branche : une ligne de développement parallèle
- Distant (remote) : copie du dépôt sur un serveur (GitHub, GitLab…)
Workflow de base
1. Initialiser un dépôt
cd mon_projet
git init
git status # Voir l'état des fichiers
2. Ajouter des fichiers au suivi
git add fichier.txt # Ajouter un fichier précis
git add . # Ajouter tous les fichiers modifiés
3. Valider les modifications (commit)
git commit -m "Ajout de la page d'accueil"
4. Voir l'historique
git log # Historique complet
git log --oneline # Historique condensé
Travailler avec GitHub / GitLab
# Cloner un dépôt existant
git clone https://github.com/utilisateur/monprojet.git
# Envoyer ses modifications
git push origin main
# Récupérer les dernières modifications
git pull
Commandes utiles
git diff # Voir les modifications non encore ajoutées
git restore fichier.txt # Annuler les modifications d'un fichier
git branch # Lister les branches
git branch nouvelle-branche # Créer une branche
git checkout nouvelle-branche # Se déplacer sur une branche
git merge nouvelle-branche # Fusionner une branche dans la branche courante
Héberger son site avec GitHub Pages
Si votre projet est sur GitHub, vous pouvez l'héberger gratuitement :
mkdocs gh-deploy # Pour un site MkDocs
Documentation : docs.github.com/fr/pages
Ressources
- git-scm.com/doc — documentation officielle (en anglais)
- Apprenez Git (OpenClassrooms)
- DevHints — Git cheatsheet