Guide complet pour installer et utiliser Git sur Ubuntu : configuration, commandes et dépannage

1. Qu’est-ce que Git ? Pourquoi installer Git sur Ubuntu?

Les bases de Git

Git est un système de contrôle de version distribué conçu pour permettre à plusieurs développeurs de travailler efficacement sur des projets logiciels en même temps. Il vous permet de gérer les projets à la fois à distance et localement tout en conservant un historique complet de toutes les modifications.

Utiliser Git sur Ubuntu

Ubuntu est un excellent environnement de développement open‑source et est largement compatible avec Git, ce qui en fait une plateforme particulièrement conviviale pour les développeurs.

2. Préparation avant d’installer Git

Mettre à jour le système

Mettez le système à jour vers la dernière version en utilisant les commandes suivantes :

sudo apt update
sudo apt upgrade

Vérification des privilèges sudo

Les privilèges sudo sont requis. Utilisez la commande whoami pour confirmer que votre compte utilisateur possède des droits d’administrateur.

3. Installation de Git via le dépôt officiel d’Ubuntu

sudo apt install git

Vous pouvez également installer la dernière version de Git en utilisant un PPA. Exécutez les commandes suivantes :

sudo add-apt-repository ppa:git-core/ppa
sudo apt update
sudo apt install git

4. Configuration initiale de Git

Configurer le nom d’utilisateur et l’adresse e‑mail

Avant d’utiliser Git, vous devez configurer le nom d’utilisateur et l’adresse e‑mail qui apparaîtront dans l’historique de vos commits.

git config --global user.name "Your Name"
git config --global user.email "your_email@example.com"

5. Comment cloner un dépôt Git

Pour cloner un dépôt distant, utilisez la commande suivante :

git clone https://github.com/example/repo.git

6. Dépannage des problèmes d’authentification, d’autorisation et de conflits

Erreurs d’authentification lors de l’utilisation de git push

Depuis 2021, des services comme GitHub ont déprécié l’authentification par mot de passe. Les jetons d’accès personnel (PAT) ou l’authentification SSH sont désormais recommandés. Si vous rencontrez des erreurs d’authentification avec git push, suivez ces étapes :

  1. Créer un PAT : Générez un jeton d’accès personnel depuis la page des paramètres de votre compte GitHub et utilisez‑le comme mot de passe lors de votre prochain git push.
  2. Vérifier les clés SSH : Si vous utilisez l’authentification SSH, confirmez et ajoutez votre clé SSH avec la commande suivante :
    ssh-add ~/.ssh/id_rsa
    

Erreurs d’autorisation lors de git push

Si vous rencontrez une erreur « Permission denied » lors de git push, il se peut que vous n’ayez pas les droits de push sur le dépôt distant. Pour résoudre ce problème, effectuez les étapes suivantes :

  1. Vérifier la configuration du remote :
    git remote -v
    git remote show origin
    
  1. Vérifier les droits de push : Confirmez que vous disposez des droits de push sur le dépôt distant. Sinon, demandez l’accès en écriture au propriétaire du dépôt.
  2. Mettre à jour l’URL du remote : Configurez la bonne URL du remote :
    git remote set-url origin <new-URL>
    

Erreurs de branche distante lors de git pull

Si vous voyez une erreur indiquant que la branche distante est introuvable lors de l’exécution de git pull, résolvez‑la comme suit :

  1. Vérifier les branches distantes :
    git branch -r
    
  1. Définir le suivi pour la branche :
    git branch --set-upstream-to=origin/<branch> <branch>
    
  1. Récupérer les changements distants : Utilisez git fetch pour récupérer les mises à jour du dépôt distant. Si une branche distante a été supprimée, des erreurs peuvent survenir lors de git pull.

7. Comment créer une Pull Request sur GitHub

Les étapes pour créer une pull request sur GitHub sont : créer une branche, valider vos modifications, pousser la branche vers le dépôt distant, puis créer une pull request depuis l’interface de GitHub.

8. Résumé et prochaines étapes

Une fois que vous maîtrisez les commandes Git de base et les techniques de dépannage, explorez des fonctionnalités plus avancées telles que git rebase et Git Flow pour améliorer davantage votre flux de travail de développement.