Accueil·Messages d’erreur

git · Git

Le message

error: src refspec main does not match any

Ce que cela veut dire

Le nom que vous avez demandé à pousser n'existe localement ni comme branche ni comme étiquette, et on ne peut pas envoyer ce qui n'est pas là. Cela arrive dans un dépôt tout neuf sans aucun commit, où main n'existe pas encore ; ou quand votre branche locale s'appelle master alors que vous avez tapé main ; ou tout simplement à cause d'une faute de frappe. git push -u origin HEAD envoie la branche sur laquelle vous vous trouvez réellement, sous son vrai nom, et règle le cas du nom qui ne correspond pas d'un seul coup. S'il n'y a aucun commit, faites-en un d'abord : un dépôt vide n'a rien à envoyer.

Le correctif

git push -u origin HEAD
Émis par
git
Git
29

Presque toutes les erreurs de git sont un refus qui signifie « faire cela depuis cet état ferait perdre quelque chose » ; fatal: veut dire que git s'est arrêté sans rien modifier, et les lignes hint: sous la première portent souvent le vrai remède.

Lire un message d’erreur

  • Lisez à partir de la première ligne. Plus on descend, plus il s’agit des entrailles de l’outil ; la cause est généralement en haut.
  • S’il y a un fichier et un numéro de ligne, commencez là — pas la première image de la pile, mais la ligne la plus haute qui nomme un fichier de vous.
  • Cherchez le message tel quel, mais retirez d’abord vos chemins et vos noms de variables : c’est cela qui empêche la correspondance.
  • La même situation se formule autrement selon la version de l’outil. Si les résultats sonnent faux, ajoutez le numéro de version.
  • Avant de coller un correctif, vérifiez ce qu’il jette. Certains sont irréversibles.

Questions fréquentes

Q. Que veut dire « error: src refspec main does not match any » ?

Le nom que vous avez demandé à pousser n'existe localement ni comme branche ni comme étiquette, et on ne peut pas envoyer ce qui n'est pas là. Cela arrive dans un dépôt tout neuf sans aucun commit, où main n'existe pas encore ; ou quand votre branche locale s'appelle master alors que vous avez tapé main ; ou tout simplement à cause d'une faute de frappe. git push -u origin HEAD envoie la branche sur laquelle vous vous trouvez réellement, sous son vrai nom, et règle le cas du nom qui ne correspond pas d'un seul coup. S'il n'y a aucun commit, faites-en un d'abord : un dépôt vide n'a rien à envoyer.

Q. Comment le corriger ?

git push -u origin HEAD — avant de le lancer, vérifiez plus haut ce que cette commande jette.

Q. Quel outil émet cela ?

git. Cela relève de Git, et le message compte 8 mots.

Erreurs voisines