fatal: not a git repository (or any of the parent directories): .git Pas un dépôt Git
Ce que ça veut dire Tu es dans un dossier que Git ne suit pas : mauvais dossier, ou git init n'a jamais été lancé.
Comment réparer Va dans le dossier de ton projet, ou crée un dépôt à cet endroit. $ cd path/to/your/project
Guide complet git@github.com: Permission denied (publickey). Permission denied (publickey)
Ce que ça veut dire Le serveur n'a pas accepté ta clé SSH : pas de clé, clé non ajoutée à ton compte, ou l'agent ne l'a pas chargée.
Comment réparer Teste la connexion, puis suis notre configuration de clé SSH. Guide complet remote: Support for password authentication was removed. Authentification par mot de passe refusée
Ce que ça veut dire GitHub n'accepte plus le mot de passe de ton compte en HTTPS.
Comment réparer Utilise une clé SSH (recommandé), ou un token d'accès personnel à la place du mot de passe. Guide complet ! [rejected] main -> main (fetch first)
error: failed to push some refs Push refusé
Ce que ça veut dire Quelqu'un a poussé sur la branche depuis ton dernier pull.
Comment réparer Récupère d'abord leurs commits, puis pousse. Ne règle jamais ça avec --force. Guide complet fatal: The current branch feature has no upstream branch. Pas de branche distante associée
Ce que ça veut dire Cette branche n'existe qu'en local : Git ne sait pas où la pousser.
Comment réparer Pousse-la une fois avec -u, ensuite un simple git push suffit. $ git push -u origin HEAD
fatal: refusing to merge unrelated histories Historiques sans lien
Ce que ça veut dire En général : tu as créé un README sur GitHub et aussi commité en local. Les deux historiques n'ont aucun commit commun.
Comment réparer Autorise le merge une fois, puis résous les conflits s'il y en a. $ git pull origin main --allow-unrelated-histories
Your branch and 'origin/main' have diverged Ta branche a divergé
Ce que ça veut dire Tu as des commits locaux et le remote en a d'autres. Git demande comment les combiner.
Comment réparer Rejoue tes commits par-dessus (historique linéaire), et fais-en le comportement par défaut. $ git config --global pull.rebase true
error: Your local changes to the following files would be overwritten by checkout Des modifications locales seraient écrasées
Ce que ça veut dire Tu as des modifications non commitées qui entrent en conflit avec la branche ou le pull.
Comment réparer Mets-les de côté avec stash, fais ton opération, puis ramène-les. $ git stash push -u -m "wip"
error: remote origin already exists. Le remote existe déjà
Ce que ça veut dire Un remote « origin » est déjà configuré.
Comment réparer Change son URL au lieu de l'ajouter une seconde fois. $ git remote set-url origin git@github.com:OWNER/REPO.git
error: src refspec main does not match any src refspec does not match any
Ce que ça veut dire La branche que tu pousses n'existe pas encore : aucun commit fait, ou elle s'appelle master et pas main.
Comment réparer Vérifie le nom de la branche et fais au moins un commit. $ git commit -m "chore: initial commit"
error: pathspec 'feature/x' did not match any file(s) known to git pathspec did not match
Ce que ça veut dire Une faute de frappe dans le nom de branche ou de fichier, ou la branche n'existe que sur le remote et n'a pas été récupérée.
Comment réparer Fais un fetch, puis liste les branches pour trouver le nom exact. fatal: Unable to create '.git/index.lock': File exists. index.lock existe déjà
Ce que ça veut dire Un autre processus Git tourne (ou a planté et laissé son fichier de verrou).
Comment réparer Ferme le panneau Git de ton éditeur et les autres terminaux. Si aucune commande Git ne tourne, supprime le verrou. CONFLICT (content): Merge conflict in src/app.ts Conflit de merge
Ce que ça veut dire Les deux côtés ont modifié les mêmes lignes.
Comment réparer Édite les fichiers, retire les marqueurs, puis add et commit — ou annule. Guide complet remote: error: File big.zip is 245.00 MB; this exceeds GitHub's file size limit of 100.00 MB Fichier trop gros pour GitHub
Ce que ça veut dire Un fichier de plus de 100 Mo est dans un des commits que tu pousses.
Comment réparer Retire-le de l'historique avant de pousser (et utilise Git LFS pour les gros fichiers). Guide complet warning: LF will be replaced by CRLF the next time Git touches it Avertissement LF / CRLF
Ce que ça veut dire Windows et Linux/macOS ne terminent pas les lignes de la même façon. C'est un avertissement, pas une erreur.
Comment réparer Sous Windows, laisse Git convertir automatiquement. En équipe, un fichier .gitattributes règle la question pour tout le monde. $ git config --global core.autocrlf true
nothing to commit, working tree clean Rien à commiter
Ce que ça veut dire Git ne voit aucun changement : fichiers non enregistrés, modifications pas indexées avec git add, ou fichiers ignorés.
Comment réparer Enregistre tes fichiers, indexe-les, et vérifie qu'ils ne sont pas ignorés. $ git check-ignore -v path/to/file
fatal: unable to access 'https://github.com/…': Could not resolve host: github.com Impossible de joindre le serveur
Ce que ça veut dire Un problème réseau : pas de connexion, un proxy, un VPN, ou un pare-feu d'entreprise.
Comment réparer Vérifie ta connexion, et l'URL du remote. You are in 'detached HEAD' state. Detached HEAD
Ce que ça veut dire Tu as fait un checkout d'un commit ou d'un tag au lieu d'une branche.
Comment réparer Crée une branche pour garder ton travail, ou retourne sur ta branche. $ git switch -c rescue/detached-work
Guide complet remote: Repository not found.
fatal: repository 'https://github.com/OWNER/REPO.git/' not found Dépôt introuvable
Ce que ça veut dire Mauvaise URL (faute de frappe, dépôt renommé), ou dépôt privé auquel ton compte n'a pas accès.
Comment réparer Vérifie l'URL, puis tes droits d'accès. Es-tu connecté avec le bon compte ? $ git remote set-url origin git@github.com:OWNER/REPO.git
fatal: 'origin' does not appear to be a git repository
fatal: Could not read from remote repository. Aucun remote nommé origin
Ce que ça veut dire Le dépôt n'a pas encore de remote (créé avec git init), ou il porte un autre nom.
Comment réparer Liste les remotes, et ajoute origin s'il manque. $ git remote add origin git@github.com:OWNER/REPO.git
Guide complet error: RPC failed; HTTP 413 curl 22
fatal: the remote end hung up unexpectedly Le serveur a coupé pendant le push
Ce que ça veut dire Un push trop gros pour HTTPS (gros fichiers, beaucoup de commits), ou une connexion instable.
Comment réparer Préfère SSH, retire les gros fichiers de l'historique (ou utilise Git LFS), ou pousse en plusieurs fois. $ git remote set-url origin git@github.com:OWNER/REPO.git
$ git push origin HEAD~10:main
Guide complet Host key verification failed.
fatal: Could not read from remote repository. Vérification de la clé d'hôte échouée
Ce que ça veut dire SSH ne connaît pas (ou ne reconnaît plus) le serveur. La première connexion doit être confirmée.
Comment réparer Connecte-toi une fois et réponds « yes » après avoir vérifié l'empreinte dans la doc de l'hébergeur. Si la clé a changé, supprime d'abord l'ancienne. $ ssh-keygen -R github.com
Guide complet fatal: could not read Username for 'https://github.com': terminal prompts disabled Git ne peut pas demander tes identifiants
Ce que ça veut dire Remote en HTTPS, pas d'identifiants enregistrés, et pas de terminal pour les demander (IDE, CI, script).
Comment réparer Passe le remote en SSH, ou configure un gestionnaire d'identifiants / un token. $ git remote set-url origin git@github.com:OWNER/REPO.git
Guide complet ! [remote rejected] main -> main (protected branch hook declined) Branche protégée
Ce que ça veut dire La branche n'accepte les changements que via des pull / merge requests (et parfois une review ou la CI).
Comment réparer Pousse ton travail sur une nouvelle branche et ouvre une pull request. C'est la protection qui fait son travail. $ git switch -c fix/my-change
$ git push -u origin HEAD
remote: error: GH013: Repository rule violations found
remote: - Push cannot contain secrets Push bloqué : un secret a été détecté
Ce que ça veut dire GitHub a trouvé une clé ou un token dans les commits que tu pousses. Bonne nouvelle : il n'a jamais quitté ta machine.
Comment réparer Retire le secret des commits (amend du dernier, ou réécriture des commits non poussés), mets-le dans .env, puis repousse. Révoque-le en cas de doute. $ git commit --amend --no-edit
Guide complet fatal: shallow update not allowed Clone superficiel (shallow)
Ce que ça veut dire Le dépôt a été cloné avec --depth (fréquent en CI) : une partie de l'historique manque.
Comment réparer Télécharge l'historique complet. fatal: The upstream branch of your current branch does not match the name of your current branch. Branche distante avec un autre nom
Ce que ça veut dire Ta branche locale suit une branche distante qui porte un autre nom.
Comment réparer Pousse vers une branche du même nom, ou corrige le suivi. $ git push -u origin HEAD
$ git branch -u origin/my-branch
error: cannot lock ref 'refs/remotes/origin/feature/login': 'refs/remotes/origin/feature' exists cannot lock ref
Ce que ça veut dire Une branche distante obsolète entre en conflit avec une nouvelle (par exemple « feature » et « feature/login »).
Comment réparer Nettoie les branches distantes qui n'existent plus. Your branch is ahead of 'origin/main' by 3 commits. Ta branche est en avance
Ce que ça veut dire Pas une erreur : tu as des commits locaux pas encore poussés.
Comment réparer Pousse-les quand tu es prêt. $ git log --oneline origin/main..HEAD
Your branch is behind 'origin/main' by 4 commits, and can be fast-forwarded. Ta branche est en retard
Ce que ça veut dire Pas une erreur : le remote a de nouveaux commits que tu n'as pas.
Comment réparer Récupère-les. fatal: You have not concluded your merge (MERGE_HEAD exists). Un merge est encore en cours
Ce que ça veut dire Un merge précédent s'est arrêté sur des conflits et n'a jamais été terminé.
Comment réparer Termine-le (résoudre, add, commit) ou annule-le. Guide complet fatal: It seems that there is already a rebase-merge directory, and I wonder if you are in the middle of another rebase. Un rebase est encore en cours
Ce que ça veut dire Un rebase précédent a été interrompu (conflit, terminal fermé).
Comment réparer Continue-le ou annule-le. Seulement si les deux refusent, supprime le dossier restant. $ rm -rf .git/rebase-merge
Guide complet error: cannot pull with rebase: You have unstaged changes. Des modifications non indexées bloquent le rebase
Ce que ça veut dire Le rebase a besoin d'un répertoire de travail propre.
Comment réparer Laisse Git les mettre de côté et les restaurer automatiquement. $ git pull --rebase --autostash
$ git config --global rebase.autoStash true
fatal: Not possible to fast-forward, aborting. Fast-forward impossible
Ce que ça veut dire Ta config n'autorise que les pulls en fast-forward, mais ta branche et le remote ont divergé.
Comment réparer Choisis explicitement : rejouer tes commits (rebase), ou merger. error: The following untracked working tree files would be overwritten by checkout: Des fichiers non suivis seraient écrasés
Ce que ça veut dire Des fichiers non suivis par Git existent là où l'autre branche a des fichiers du même nom.
Comment réparer Déplace-les, ou mets-les de côté avec les fichiers non suivis. Vérifie avant de supprimer quoi que ce soit. $ git stash push -u -m "before switch"
CONFLICT (content): Merge conflict in app.ts
The stash entry is kept in case you need it again. Conflit en appliquant un stash
Ce que ça veut dire Les modifications du stash entrent en conflit avec le code actuel. Le stash est conservé, rien n'est perdu.
Comment réparer Résous les conflits, puis supprime le stash toi-même. Guide complet error: The branch 'feature/x' is not fully merged. Branche pas entièrement mergée
Ce que ça veut dire git branch -d te protège : cette branche a des commits qui n'existent nulle part ailleurs.
Comment réparer Vérifie ce qui serait perdu. Force la suppression seulement si tu es sûr. $ git log --oneline main..feature/x
$ git branch -D feature/x
fatal: a branch named 'feature/x' already exists La branche existe déjà
Ce que ça veut dire Tu as essayé de créer une branche avec un nom déjà pris.
Comment réparer Bascule dessus, ou choisis un autre nom. fatal: tag 'v1.2.0' already exists Le tag existe déjà
Ce que ça veut dire Un tag de ce nom existe en local ou sur le remote. Un tag n'est pas censé bouger.
Comment réparer Crée un nouveau numéro de version. Déplacer un tag publié casse tous ceux qui l'utilisent. $ git fetch --tags --force
Guide complet fatal: ambiguous argument 'HEAD~1': unknown revision or path not in the working tree. Révision inconnue
Ce que ça veut dire Le commit, la branche ou le fichier n'existe pas (faute de frappe, ou pas de commit avant HEAD dans un nouveau dépôt).
Comment réparer Vérifie le nom. Pour désigner un fichier, sépare-le avec --. $ git log -- path/to/file
fatal: your current branch 'main' does not have any commits yet Aucun commit pour l'instant
Ce que ça veut dire Le dépôt est tout neuf : la branche n'existe qu'après le premier commit.
Comment réparer Fais le premier commit. $ git add .
$ git commit -m "chore: initial commit"
Guide complet fatal: detected dubious ownership in repository at '/path/to/repo' Propriétaire douteux
Ce que ça veut dire Le dossier appartient à un autre utilisateur (copié d'un autre disque, Docker, WSL…). Git refuse par sécurité.
Comment réparer Si tu fais confiance à ce dossier, marque-le comme sûr. $ git config --global --add safe.directory /path/to/repo
error: insufficient permission for adding an object to repository database .git/objects Permissions insuffisantes sur .git
Ce que ça veut dire Des fichiers de .git appartiennent à root : en général après une commande git lancée avec sudo.
Comment réparer Rends le dossier à ton utilisateur. Et n'utilise jamais sudo avec git. $ sudo chown -R "$(whoami)" .git
error: object file .git/objects/ab/cdef… is empty
fatal: loose object abcdef… is corrupt Dépôt corrompu
Ce que ça veut dire Des fichiers de .git ont été abîmés (plantage, disque plein, outil de synchro comme Dropbox / OneDrive).
Comment réparer Sauvegarde d'abord tout le dossier. Ensuite vérifie, et si besoin re-clone et recopie tes modifications. Guide complet warning: adding embedded git repository: vendor/lib Un dépôt dans le dépôt
Ce que ça veut dire Un sous-dossier a son propre .git (souvent une bibliothèque clonée). Seul un pointeur est ajouté, pas ses fichiers.
Comment réparer Soit tu supprimes le .git interne pour garder les fichiers, soit tu en fais un vrai sous-module. $ git rm --cached vendor/lib
$ git submodule add https://github.com/OWNER/lib.git vendor/lib
Guide complet fatal: in unpopulated submodule 'vendor/lib' Dossier de sous-module vide
Ce que ça veut dire Le clone ne télécharge pas les sous-modules par défaut.
Comment réparer Initialise-les et télécharge-les. $ git submodule update --init --recursive
Guide complet error: unable to create file src/…/very/long/path.ts: Filename too long Nom de fichier trop long (Windows)
Ce que ça veut dire Windows limite les chemins à 260 caractères par défaut.
Comment réparer Autorise les chemins longs dans Git (et dans Windows si besoin). $ git config --global core.longpaths true
error: invalid path 'docs/notes:draft.md' Chemin invalide (Windows)
Ce que ça veut dire Un nom de fichier contient un caractère ou un nom interdit par Windows (: * ? " < > |, aux, con…).
Comment réparer Renomme le fichier depuis macOS / Linux (ou sur GitHub), commite, puis refais le pull sous Windows. $ git mv "docs/notes:draft.md" docs/notes-draft.md
error: gpg failed to sign the data
fatal: failed to write commit object La signature du commit a échoué
Ce que ça veut dire La signature des commits est activée mais GPG ne peut pas demander la phrase de passe ou ne trouve pas la clé.
Comment réparer Indique à GPG quel terminal utiliser, vérifie la clé configurée, ou signe plutôt avec ta clé SSH. $ git config --global user.signingkey
Guide complet Changes not staged for commit:
modified: src/app.ts Modifications non indexées
Ce que ça veut dire Pas une erreur : tu as modifié des fichiers sans faire git add, ils ne seront donc pas dans le commit.
Comment réparer Indexe ce que tu veux commiter. Guide complet *** Please tell me who you are.
Run
git config --global user.email "you@example.com"
git config --global user.name "Your Name"
fatal: unable to auto-detect email address Please tell me who you are (identité manquante)
Ce que ça veut dire Git signe chaque commit avec un nom et un email, et aucun n'est configuré sur cette machine.
Comment réparer Configure ton nom et ton email une fois pour toutes. Mets l'email de GitHub pour que tes commits soient reliés à ton compte. $ git config --global user.name "Ada Lovelace"
$ git config --global user.email "ada@example.com"
Guide complet git: 'stauts' is not a git command. See 'git --help'.
The most similar command is
status « … » n'est pas une commande git
Ce que ça veut dire Une faute de frappe, une commande d'un autre outil, ou un alias qui n'existe pas sur cette machine.
Comment réparer Lis la suggestion de Git juste sous l'erreur. Tu peux demander à Git de proposer la correction tout seul. $ git config --global help.autocorrect prompt
Guide complet error: unknown option `hard'
usage: git commit [<options>] [--] <pathspec>... Option inconnue
Ce que ça veut dire L'option n'existe pas pour cette commande (ou pour ta version de Git), ou il manque un tiret (-m ou --message).
Comment réparer Regarde la ligne « usage » affichée par Git, et ta version : les options récentes (git switch, git restore) demandent Git 2.23+. error: switch `m' requires a value L'option demande une valeur
Ce que ça veut dire L'option attend quelque chose derrière : souvent un message de commit perdu à cause des guillemets (apostrophes sous l'invite de commandes Windows).
Comment réparer Mets le message entre guillemets doubles. $ git commit -m "fix: login button on Safari"
fatal: bad config line 12 in file .git/config Ligne de config invalide
Ce que ça veut dire Un fichier de configuration a été modifié à la main et contient une erreur de syntaxe (guillemet, crochet, encodage).
Comment réparer Ouvre le fichier cité à la ligne indiquée et corrige-la, ou supprime le réglage fautif. $ git config --global --edit
$ git config --local --edit
Guide complet hint: Waiting for your editor to close the file... Git attend que tu fermes l'éditeur
Ce que ça veut dire Git a ouvert ton éditeur (VS Code, Bloc-notes…) pour un message et attend que tu fermes cet onglet ou cette fenêtre.
Comment réparer Écris le message, enregistre, ferme l'onglet. Pour VS Code, configure-le avec --wait. $ git config --global core.editor "code --wait"
error: There was a problem with the editor 'vi'.
Please supply the message using either -m or -F option. Problème avec l'éditeur
Ce que ça veut dire L'éditeur a été fermé sans enregistrer, a planté, ou n'est pas installé.
Comment réparer Donne le message avec -m, ou configure un éditeur que tu as. $ git commit -m "message"
$ git config --global core.editor nano
Please enter a commit message to explain why this merge is necessary,
especially if it merges an updated upstream into a topic branch. Coincé dans un éditeur qui demande pourquoi ce merge
Ce que ça veut dire git pull a créé un commit de merge et ouvert Vim pour son message. Rien n'est cassé : Git t'attend.
Comment réparer Dans Vim : appuie sur Échap, tape :wq puis Entrée pour valider. Pour éviter ça, fais tes pull en rebase. $ git config --global pull.rebase true
Guide complet E325: ATTENTION
Found a swap file by the name ".git/.COMMIT_EDITMSG.swp" Vim a trouvé un fichier swap
Ce que ça veut dire Une session Vim précédente sur le message de commit a planté ou est encore ouverte quelque part.
Comment réparer Appuie sur D pour supprimer le fichier swap (si aucun autre Vim n'est ouvert), puis continue. $ rm .git/.COMMIT_EDITMSG.swp
fatal: destination path 'my-project' already exists and is not an empty directory. Le dossier de destination existe déjà
Ce que ça veut dire git clone crée un nouveau dossier, et un dossier non vide de ce nom existe déjà.
Comment réparer Clone dans un autre nom de dossier, ou va dans le dossier existant : c'est peut-être déjà le projet. $ git clone https://github.com/owner/repo.git my-project-2
Guide complet warning: You appear to have cloned an empty repository. Tu as cloné un dépôt vide
Ce que ça veut dire Le dépôt existe mais n'a encore aucun commit. Ce n'est pas une erreur.
Comment réparer Ajoute des fichiers, fais le premier commit et pousse-le. $ git commit -m "Initial commit"
$ git push -u origin main
Guide complet fatal: could not create work tree dir 'repo': Permission denied Impossible de créer le dossier du dépôt
Ce que ça veut dire Tu clones dans un dossier où tu n'as pas le droit d'écrire (dossier système, dossier d'un autre utilisateur).
Comment réparer Clone dans tes propres dossiers (Documents, dossier personnel). fatal: unable to access 'https://github.com/owner/repo.git/': SSL certificate problem: unable to get local issuer certificate Problème de certificat SSL
Ce que ça veut dire Ton réseau (proxy d'entreprise, antivirus) intercepte le HTTPS, ou Git n'utilise pas les certificats de ton système.
Comment réparer Sous Windows, fais utiliser à Git les certificats du système. Ne désactive jamais sslVerify durablement : ça t'expose aux attaques. $ git config --global http.sslBackend schannel
ssh: connect to host github.com port 22: Connection timed out
fatal: Could not read from remote repository. Port SSH 22 bloqué
Ce que ça veut dire Ton réseau (école, entreprise, Wi-Fi public) bloque le SSH sur le port 22.
Comment réparer GitHub accepte aussi le SSH sur le port 443 : ajoute ceci à ~/.ssh/config. Ou passe en HTTPS. $ Host github.com
$ Hostname ssh.github.com
$ Port 443
$ User git
Guide complet remote: Permission to owner/repo.git denied to other-user.
fatal: unable to access 'https://github.com/owner/repo.git/': The requested URL returned error: 403 Accès refusé (403)
Ce que ça veut dire Tu es authentifié, mais avec un compte qui n'a pas le droit de pousser ici : un ancien compte mémorisé par le gestionnaire d'identifiants, ou pas d'accès en écriture.
Comment réparer Efface les identifiants GitHub mémorisés (ils seront redemandés au prochain push), ou demande l'accès en écriture au propriétaire. $ git credential reject <<< $'protocol=https\nhost=github.com\n'
error: No such remote 'upstream' Ce remote n'existe pas
Ce que ça veut dire Le nom du remote est faux ou n'a jamais été ajouté (upstream est fréquent après un fork).
Comment réparer Liste tes remotes, puis ajoute celui qui manque. $ git remote add upstream https://github.com/original/repo.git
Guide complet fatal: No configured push destination. Aucune destination de push
Ce que ça veut dire Le dépôt n'a aucun remote : il a été créé avec git init et jamais relié à GitHub / GitLab.
Comment réparer Crée le dépôt en ligne, ajoute-le comme origin, puis pousse. $ git remote add origin https://github.com/owner/repo.git
$ git push -u origin main
Guide complet fatal: couldn't find remote ref feature/login Branche distante introuvable
Ce que ça veut dire La branche que tu pull ou fetch n'existe pas sur le serveur : faute de frappe, déjà supprimée, ou jamais poussée.
Comment réparer Liste les branches distantes et utilise le nom exact. $ git ls-remote --heads origin
Your branch is based on 'origin/feature/login', but the upstream is gone. La branche distante a disparu
Ce que ça veut dire La branche distante a été supprimée (souvent après le merge de sa pull request).
Comment réparer Si le travail est mergé, reviens sur main et supprime la branche locale. Sinon, repousse-la. $ git switch main && git pull
$ git branch -d feature/login
Guide complet remote: error: refusing to update checked out branch: refs/heads/main Refus de mettre à jour la branche en cours
Ce que ça veut dire Tu pousses vers un dépôt normal (avec des fichiers) dont la branche actuelle est celle que tu pousses : ça désynchroniserait ses fichiers.
Comment réparer Pousse vers un dépôt « bare » (git init --bare) ou vers une autre branche. $ git init --bare /srv/git/project.git
fatal: refusing to fetch into branch 'refs/heads/main' checked out at '/home/me/project' Refus de fetch dans la branche en cours
Ce que ça veut dire git fetch origin main:main met à jour une branche locale directement, mais c'est celle sur laquelle tu es.
Comment réparer Sur la branche en cours, utilise plutôt git pull. fatal: invalid reference: feature/login Référence invalide
Ce que ça veut dire La branche ou le commit cité n'existe pas en local (faute de frappe, ou seulement sur le remote et pas récupéré).
Comment réparer Fais un fetch, puis vérifie le nom exact. fatal: 'origin/feature' is not a commit and a branch 'feature' cannot be created from it Pas un commit : impossible de créer la branche
Ce que ça veut dire Tu crées une branche depuis une branche distante que ton dépôt ne connaît pas encore.
Comment réparer Fais d'abord un fetch, puis crée-la. fatal: Not a valid object name: 'main'. Nom d'objet invalide
Ce que ça veut dire En général un dépôt tout neuf : il n'y a encore aucun commit, donc aucune branche d'où partir.
Comment réparer Fais un premier commit, puis crée tes branches. $ git commit --allow-empty -m "Initial commit"
warning: refname 'main' is ambiguous. Nom de référence ambigu
Ce que ça veut dire Deux choses portent le même nom : souvent une branche et un tag (main), ou une branche nommée origin/main.
Comment réparer Trouve le doublon et renomme ou supprime le mauvais. fatal: 'main' is already checked out at '/home/me/project' Branche déjà ouverte dans un autre worktree
Ce que ça veut dire Avec git worktree, une branche ne peut être ouverte que dans un seul dossier à la fois.
Comment réparer Utilise l'autre dossier, ou supprime le worktree inutile. $ git worktree remove ../old-folder
error: Cannot delete branch 'feature' checked out at '/home/me/project' Impossible de supprimer la branche actuelle
Ce que ça veut dire Tu es sur la branche que tu essaies de supprimer.
Comment réparer Change d'abord de branche. Guide complet warning: ignoring broken ref refs/remotes/origin/HEAD Référence cassée ignorée
Ce que ça veut dire Une référence pointe vers quelque chose qui n'existe plus (souvent origin/HEAD après le renommage de la branche par défaut).
Comment réparer Laisse Git la recalculer. $ git remote set-head origin --auto
fatal: No names found, cannot describe anything. Aucun tag pour décrire
Ce que ça veut dire git describe a besoin d'un tag annoté, et il n'y en a aucun.
Comment réparer Crée un tag annoté, ou autorise les tags légers. $ git tag -a v0.1.0 -m "First version"
$ git describe --tags --always
Aborting commit due to empty commit message. Commit annulé : message vide
Ce que ça veut dire L'éditeur a été fermé sans message, donc Git a annulé le commit. Rien n'est perdu.
Comment réparer Recommence le commit avec un message. $ git commit -m "feat: what you changed"
Guide complet fatal: cannot do a partial commit during a merge. Pas de commit partiel pendant un merge
Ce que ça veut dire Pendant un merge, un commit prend tout : git commit <fichier> n'est pas autorisé.
Comment réparer Ajoute les fichiers résolus, puis commit sans nom de fichier. Guide complet error: could not apply 3f2a1b9... feat: login form
hint: Resolve all conflicts manually, mark them as resolved with
hint: "git add/rm <conflicted_files>", then run "git rebase --continue". Impossible d'appliquer un commit (conflit de rebase)
Ce que ça veut dire Pendant un rebase ou un cherry-pick, un commit touche des lignes modifiées ailleurs : Git s'arrête pour que tu choisisses.
Comment réparer Corrige les fichiers en conflit, ajoute-les, continue. Ou abandonne pour revenir à avant. $ git add . && git rebase --continue
Guide complet CONFLICT (modify/delete): src/old.ts deleted in HEAD and modified in feature. Version feature of src/old.ts left in tree. Conflit : modifié d'un côté, supprimé de l'autre
Ce que ça veut dire Une branche a supprimé un fichier que l'autre a modifié. Git ne peut pas deviner qui a raison.
Comment réparer Garde le fichier (git add) ou confirme la suppression (git rm), puis continue. Guide complet error: commit 4b1c2d3 is a merge but no -m option was given. Commit de merge sans option -m
Ce que ça veut dire Pour annuler ou cherry-picker un merge, Git doit savoir quel parent est la ligne principale.
Comment réparer Utilise -m 1 (la branche dans laquelle tu as mergé, en général main). $ git revert -m 1 4b1c2d3
Guide complet The previous cherry-pick is now empty, possibly due to conflict resolution. Le cherry-pick est vide
Ce que ça veut dire Le changement est déjà sur cette branche : après les conflits, il ne reste rien à appliquer.
Comment réparer Passe-le. error: You have not concluded your cherry-pick (CHERRY_PICK_HEAD exists). Un cherry-pick est en cours
Ce que ça veut dire Un cherry-pick s'est arrêté sur des conflits et n'a jamais été terminé.
Comment réparer Termine-le ou abandonne-le. $ git cherry-pick --continue
$ git cherry-pick --abort
fatal: There is no merge to abort (MERGE_HEAD missing). Aucun merge à annuler
Ce que ça veut dire Le merge est déjà terminé (commité) ou n'a jamais commencé.
Comment réparer Pour défaire un merge déjà fait et pas poussé, reviens à ORIG_HEAD. $ git reset --merge ORIG_HEAD
Guide complet fatal: No rebase in progress? Aucun rebase en cours
Ce que ça veut dire Tu as lancé rebase --continue/--abort mais aucun rebase n'est en cours.
Comment réparer Vérifie l'état ; un rebase terminé peut se défaire avec le reflog. No stash entries found. Aucun stash trouvé
Ce que ça veut dire La liste des stashs est vide (ou ce numéro de stash n'existe pas).
Comment réparer Liste tes stashs. Un stash supprimé par erreur peut parfois être retrouvé. $ git fsck --unreachable | grep commit
Guide complet Unlink of file 'node_modules/.bin/esbuild.exe' failed. Should I try again? (y/n) Impossible de supprimer un fichier (fichier utilisé)
Ce que ça veut dire Sous Windows, un programme (éditeur, serveur de dev, antivirus) garde le fichier ouvert, donc Git ne peut pas le remplacer.
Comment réparer Arrête le serveur de dev / ferme le programme, puis réponds y. error: bad signature 0x00000000
fatal: index file corrupt Fichier index corrompu
Ce que ça veut dire Le fichier .git/index a été abîmé (plantage, disque plein, outil de synchro comme OneDrive ou Dropbox).
Comment réparer L'index se reconstruit depuis le dernier commit ; tes fichiers ne sont pas touchés. Guide complet remote: warning: File assets/video.mp4 is 62.00 MB; this is larger than GitHub's recommended maximum file size of 50.00 MB Fichier au-dessus des 50 Mo conseillés par GitHub
Ce que ça veut dire Le push a marché, mais ce fichier alourdit le dépôt pour toujours. Au-delà de 100 Mo, GitHub refuse.
Comment réparer Passe ce genre de fichier dans Git LFS. Guide complet Encountered 3 file(s) that should have been pointers, but weren't: Des fichiers auraient dû être des pointeurs LFS
Ce que ça veut dire Des fichiers couverts par les règles LFS du .gitattributes ont été commités sans LFS (LFS pas installé au moment du commit).
Comment réparer Installe LFS, puis renormalise ces fichiers. $ git add --renormalize . && git commit -m "chore: move files to LFS"
fatal: Cannot update paths and switch to branch 'feature' at the same time. Impossible de changer de branche et de fichiers en même temps
Ce que ça veut dire git checkout a reçu à la fois une branche et des noms de fichiers, souvent parce que la branche distante n'est pas encore récupérée.
Comment réparer Fais un fetch, puis change de branche avec la commande moderne. This branch has conflicts that must be resolved Cette branche a des conflits à résoudre (PR)
Ce que ça veut dire main a modifié les mêmes lignes que ta pull request depuis que tu l'as ouverte.
Comment réparer Merge ou rebase main dans ta branche en local, règle les conflits, pousse. $ git fetch origin
$ git merge origin/main
Guide complet This branch is out-of-date with the base branch Cette branche est en retard sur la base (PR)
Ce que ça veut dire Le dépôt exige que les branches de PR contiennent le dernier main avant le merge.
Comment réparer Clique sur « Update branch », ou merge/rebase main en local et pousse. $ git fetch origin
$ git merge origin/main
$ git push
Guide complet Merging is blocked
Review required: at least 1 approving review is required by reviewers with write access. Merge bloqué : review obligatoire
Ce que ça veut dire La protection de branche exige l'approbation de quelqu'un d'autre avant le merge.
Comment réparer Demande une review (Reviewers, en haut à droite). Pousser de nouveaux commits peut annuler les anciennes approbations. $ gh pr edit 123 --add-reviewer teammate
Guide complet Some checks were not successful
Required statuses must pass before merging Les checks obligatoires doivent passer avant le merge
Ce que ça veut dire Un job de CI (lint, tests, build) a échoué ou tourne encore, et le dépôt l'exige.
Comment réparer Ouvre le détail du check en échec, reproduis en local, pousse une correction. Guide complet There isn't anything to compare.
main and feature are identical. Rien à comparer (PR vide)
Ce que ça veut dire Ta branche n'a aucun commit que la base n'a pas déjà : pas poussé, ou commité sur une autre branche.
Comment réparer Vérifie que tes commits sont sur cette branche et poussés. $ git log --oneline origin/main..HEAD
$ git push -u origin HEAD
a pull request for branch "feature" into branch "main" already exists:
https://github.com/owner/repo/pull/123 Une pull request existe déjà pour cette branche
Ce que ça veut dire Une branche = une PR ouverte. La tienne est déjà ouverte : pousser la met à jour.
Comment réparer Pousse simplement sur la branche ; ou ouvre la PR existante depuis le lien. aborted: you must first push the current branch to a remote, or use the --head flag Il faut d'abord pousser la branche
Ce que ça veut dire gh pr create a besoin que ta branche existe sur GitHub.
Comment réparer Pousse-la, puis crée la PR. $ git push -u origin HEAD
$ gh pr create --fill