Erreur de validation git: pathspec 'commit' ne correspond à aucun fichier connu de git


87

J'essaie de télécharger une application Ruby sur Heroku. Je commence par git initet puis je tape git add .et ensuite j'utilise git commit -m initial commit.

Chaque fois que j'utilise git commit -m, je reçois un message d'erreur disant:

Erreur de validation git: Pathspect 'commit' ne correspond à aucun fichier connu de git.

On m'a dit que cela se produit parce que les arguments sont dans le mauvais ordre.

Ce que j'ai remarqué, c'est que lorsque je l'utilise, git add .il ne répertorie pas les fichiers ajoutés car il passe simplement à la ligne suivante.

Je soupçonne que j'ai ce problème car mes fichiers ne sont pas vraiment ajoutés.

J'apprécierais tout conseil sur la façon de corriger ce problème.

Réponses:


195

Les arguments de la ligne de commande sont séparés par un espace. Si vous souhaitez fournir un argument avec un espace, vous devez le citer. Alors utilisez git commit -m "initial commit".


32
git commit -m guillemet simple 'initial commit' ne fonctionnait pas pour moi, je l'utilise dans un environnement Windows.
somshivam

13
Sous Windows, les guillemets sont le seul choix.
Chad

Merci beaucoup. J'ai résolu ce problème avec un double guillemet dans mon système de fenêtres.
Bhavin Thummar le

Économiseur de jour, je n'ai pas utilisé du tout de guillemets (doubles simples), donc cela a échoué à cause d'espaces.
Timo il y a

72

Je voudrais juste ajouter ...

Dans Windows, le message de validation doit être entre guillemets ( git commit -m "initial commit"au lieu de git commit -m 'initial commit'), car j'ai passé environ une heure, juste pour comprendre que le guillemet simple ne fonctionne pas dans Windows.


4
Les utilisateurs de Windows regardent ici!
Shane le

2
Provenant de l' aide GitHub où les guillemets sont simples.
Bob Stein

J'utilise git commit -m "first commit" et j'obtiens toujours la même erreur sous Windows.
multigoodverse

@nicks Merci monsieur!
haakym

oui, venant de l'aide de bitbucket, qui a également cité des guillemets simples
Kirill Yunussov

6

Dans mon cas, cette erreur était due à des caractères spéciaux que je considérais comme des guillemets doubles lorsque je copiais la commande à partir d'une page Web.


5

J'ai découvert une erreur ici, utilisez des guillemets doubles au lieu de guillemets simples.

change ça

git commit -m 'initial commit'

à

git commit -m "initial commit"


4

Si cela m'était arrivé lors de la validation depuis Xcode 6, après avoir ajouté un répertoire de fichiers et de sous-répertoires au dossier du projet. Le problème était que, dans la feuille de validation, dans la barre latérale gauche, j'avais coché non seulement le répertoire racine que j'avais ajouté, mais aussi tous ses descendants. Pour résoudre le problème, j'ai coché uniquement le répertoire racine. Cela a également validé tous les descendants, comme souhaité, sans erreur.


3

Si cela m'était arrivé lors de la validation depuis Xcode 6, après avoir ajouté un répertoire de fichiers et de sous-répertoires au dossier du projet. Le problème était que, dans la feuille de validation , dans la barre latérale gauche, j'avais coché non seulement le répertoire racine que j'avais ajouté, mais aussi tous ses descendants. Pour résoudre le problème, j'ai coché uniquement le répertoire racine. Cela a également validé tous les descendants, comme souhaité, sans erreur.


3

Veuillez noter que dans Windows, il est très important que les git commit -m "initial commit"textes de validation initiaux soient entre guillemets. Les guillemets simples génèrent une erreur de spécification de chemin.


1

Dans mon cas, le problème était que j'avais utilisé un mauvais alias git commit -m. J'ai utilisé un gcalias qui ne voulait pas diregit commit -m



0

J'ai rencontré le même problème. ma syntaxe n'a aucun problème. Ce que j'ai trouvé, c'est que j'ai copié et collé git commit -m "comments" de ma note. Je le retape, la commande s'exécute sans problème. Il s'avère que - et "" sont le problème lorsque je copie coller sur le terminal.


0

Dans mon cas, le problème était que j'avais oublié d'ajouter le commutateur -m avant le commentaire cité. Cela peut aussi être une erreur courante et le message d'erreur reçu est exactement le même

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.