Cours Complet : Git et GitHub
Introduction
Qu'est-ce que Git ?
Git est un logiciel de gestion de versions décentralisé. Imaginez que vous écrivez un livre :
Git vous permet de sauvegarder chaque version de votre manuscrit, de revenir en arrière si
vous faites une erreur, et de collaborer avec d'autres écrivains sans mélanger vos
modifications.
Qu'est-ce que GitHub ?
GitHub est une plateforme en ligne qui héberge vos dépôts Git. C'est comme une bibliothèque
pour vos projets, où vous pouvez partager votre code avec d'autres développeurs, suivre les
contributions de chacun et collaborer efficacement.
Partie 1 : Installation de Git
Installation sur Windows
1. Accédez au site officiel : Rendez-vous sur [Link].
2. Téléchargez Git : Cliquez sur le bouton de téléchargement, il détectera
automatiquement votre version de Windows.
3. Exécutez l’installateur : Suivez les étapes en laissant les options par défaut (si vous
débutez).
o Une option importante est "Git Bash", un terminal qui facilite l'utilisation de
Git.
4. Vérifiez l’installation : Ouvrez "Git Bash" et tapez :
5. git --version
Vous devriez voir un numéro de version (ex. git version 2.39.2).
Installation sur macOS
1. Installez Homebrew (si ce n'est pas déjà fait) :
2. /bin/bash -c "$(curl -fsSL
[Link]
3. Installez Git via Homebrew :
4. brew install git
5. Vérifiez l’installation :
6. git --version
Installation sur Linux
1. Utilisez le gestionnaire de paquets de votre distribution. Sur Ubuntu :
2. sudo apt update
3. sudo apt install git
4. Vérifiez l’installation :
5. git --version
Partie 2 : Configuration initiale
Configurer votre identité
Lorsque vous effectuez des modifications avec Git, il est important de les associer à votre
nom et à votre e-mail :
git config --global [Link] "Votre Nom"
git config --global [Link] "votreemail@[Link]"
Pourquoi ? Cela permet de savoir qui a fait quoi dans un projet, ce qui est essentiel en
collaboration.
Afficher la configuration
Pour vérifier vos paramètres :
git config --list
Notion importante : SSH Key pour GitHub
Pour éviter de saisir votre mot de passe à chaque fois :
1. Générez une clé SSH :
2. ssh-keygen -t ed25519 -C "votreemail@[Link]"
3. Ajoutez la clé à votre agent SSH :
4. eval $(ssh-agent -s)
5. ssh-add ~/.ssh/id_ed25519
6. Ajoutez la clé à GitHub :
o Copiez la clé publique :
o cat ~/.ssh/id_ed25519.pub
o Collez-la dans GitHub (Paramètres > SSH et GPG Keys).
Partie 3 : Commandes Git essentielles
Initialisation d'un projet Git
1. Créez un répertoire pour votre projet :
2. mkdir mon-projet
3. cd mon-projet
4. Initialisez un dépôt Git :
5. git init
Cela crée un dossier caché .git où Git suivra vos modifications.
Ajouter des fichiers au suivi
1. Créez un fichier (ex. [Link]).
2. Ajoutez le fichier au suivi :
3. git add [Link]
Cela prépare le fichier pour le prochain commit.
4. Validez les modifications :
5. git commit -m "Initial commit"
Un commit est une capture instantanée de votre projet.
Historique des commits
Pour voir tous les commits passés :
git log
Cela affiche :
• L'identifiant unique du commit.
• L'auteur.
• La date.
• Le message de commit.
Clonage d'un dépôt existant
Si vous travaillez sur un projet existant :
git clone [Link]
Cela télécharge le projet dans un nouveau dossier.
Résumé des états
Pour voir les fichiers modifiés ou non suivis :
git status
Branches
1. Créer une nouvelle branche :
2. git branch ma-branche
3. Basculer sur cette branche :
4. git checkout ma-branche
5. Fusionner une branche dans main :
6. git checkout main
7. git merge ma-branche
Récupérer les modifications depuis GitHub
Pour synchroniser avec le dépôt distant :
git pull origin main
Envoyer les modifications sur GitHub
Pour envoyer vos changements :
git push origin main
Partie 4 : Exercices
Exercice 1 : Initialisation et commits
1. Créez un nouveau répertoire.
2. Initialisez un dépôt Git.
3. Créez un fichier [Link] contenant une description de votre projet.
4. Ajoutez-le au suivi et faites un commit avec le message "Ajout du fichier README".
Correction :
mkdir exercice1
cd exercice1
git init
echo "# Mon Projet" > [Link]
git add [Link]
git commit -m "Ajout du fichier README"
Exercice 2 : Création et gestion de branches
1. Créez une nouvelle branche nommée develop.
2. Ajoutez un fichier [Link] dans cette branche.
3. Revenez à la branche main et fusionnez develop.
Correction :
git branch develop
git checkout develop
echo "[Link]('Hello World');" > [Link]
git add [Link]
git commit -m "Ajout de [Link]"
git checkout main
git merge develop
Partie 5 : Notions avancées
Rebase
Permet de réécrire l'historique des commits. Par exemple :
git checkout feature-branch
git rebase main
Cela déplace vos commits au sommet des modifications dans main.
Gestion des conflits
En cas de conflit, résolvez les problèmes dans les fichiers concernés, puis :
git add fichier_conflit
Terminez le merge ou le rebase :
git merge --continue
# ou
git rebase --continue
Stash
Pour sauvegarder temporairement des modifications non terminées :
git stash
Pour récupérer les modifications :
git stash apply