Aller au contenu
Développement medium

Opérations Git : résoudre les problèmes du quotidien

4 min de lecture

Vous avez un problème avec Git et vous cherchez la solution rapidement ? Cette section regroupe 7 guides opérationnels, organisés par symptôme. Pas de théorie inutile : chaque guide part d'un message d'erreur ou d'une situation concrète et donne la solution étape par étape.

La bonne nouvelle : Git ne supprime presque rien. Les commits, branches et stashs que vous croyez perdus restent accessibles via git reflog, généralement 90 jours, mais les entrées devenues injoignables après un commit --amend ou un rebase expirent souvent au bout de 30 jours (gc.reflogExpireUnreachable). Avant toute opération de récupération, trois commandes permettent de cerner la situation :

  • git status, état actuel du dépôt (modifié, stagé, en conflit)
  • git log --oneline -10, les 10 derniers commits de la branche
  • git reflog, tout ce que Git a enregistré ces dernières heures
SymptômeGuide
« Mon message de commit est faux » / « J'ai oublié un fichier »Annuler et corriger des commits
« J'ai commité sur main au lieu de ma branche »Commit sur la mauvaise branche
« Git me dit CONFLICT »Résoudre les conflits de merge
« ! [rejected] quand je push »Débloquer un push rejeté
« Le fichier est dans .gitignore mais Git le suit toujours »Nettoyer l'historique et les fichiers
« J'ai supprimé une branche par erreur » / « J'ai perdu des commits »Récupérer des données perdues
« Quelque chose ne marche plus, je ne sais pas depuis quand »Diagnostiquer des problèmes

La majorité des erreurs Git tombent dans trois catégories :

Vous avez modifié des données non partagées (commits locaux, branches non pushées). Récupération sans risque : reset, amend, rebase sont vos alliés.

Vous avez modifié des données déjà partagées (commits pushés sur origin). La récupération passe par revert (crée un commit inverse, sans réécriture) ou par push --force-with-lease si toute l'équipe est prévenue. Ne jamais reset --hard sur une branche partagée sans coordination.

Vous avez cru supprimer quelque chose (branche effacée, reset --hard, stash perdu). Tout est dans le reflog, consultez-le avant de paniquer.

  • Ne paniquez jamais : Git ne jette presque rien, le reflog conserve généralement 90 jours d'historique (30 jours pour les entrées devenues injoignables après amend ou rebase)
  • git pull --rebase résout 90% des push rejetés
  • git commit --amend corrige le dernier commit (message ou fichier oublié)
  • git revert annule un commit pushé en créant un commit inverse
  • git reflog est votre machine à remonter le temps, premier réflexe quand quelque chose disparaît
  • Créez une branche de sauvegarde avant toute opération risquée : git branch backup-avant-manip ne coûte rien
  • Ces guides renvoient vers les cours (Modules 1-6) pour la théorie détaillée

Ce site vous est utile ?

Sachez que moins de 1% des lecteurs soutiennent ce site.

Je maintiens +700 guides gratuits, sans pub ni tracking. Un soutien, même symbolique, m'aide à couvrir l'hébergement et à garder ces ressources gratuites. Merci pour votre appui.

Le formulaire ne s'affiche pas ? Ouvrir Ko-fi dans un onglet.

Abonnez-vous et suivez mon actualité DevSecOps sur LinkedIn