Git-Commit-Fehler: Pathspec 'Commit' stimmte nicht mit Dateien überein, die Git bekannt sind

85

Ich versuche, eine Ruby-App auf Heroku hochzuladen. Ich beginne mit git initund dann tippe ich git add .und benutze dann git commit -m initial commit.

Bei jeder Verwendung git commit -merhalte ich die Fehlermeldung:

git commit error: pathspect 'commit' stimmte nicht mit Dateien überein, die git bekannt sind.

Mir wurde gesagt, dass dies geschieht, weil die Argumente in der falschen Reihenfolge sind.

Was mir aufgefallen ist, ist, dass bei meiner Verwendung git add .die hinzugefügten Dateien nicht aufgelistet werden, da nur in die nächste Zeile gewechselt wird.

Ich vermute, dass ich dieses Problem habe, weil meine Dateien nicht wirklich hinzugefügt werden.

Ich würde mich über Ratschläge zur Behebung dieses Problems freuen.

user2457644
quelle

Antworten:

192

Die Befehlszeilenargumente sind durch Leerzeichen getrennt. Wenn Sie ein Argument mit einem Leerzeichen versehen möchten, sollten Sie es zitieren. Also benutze git commit -m "initial commit".

kan
quelle
31
git commit -m 'anfängliches Commit' einfaches Anführungszeichen hat bei mir nicht funktioniert, ich verwende es in einer Windows-Umgebung.
Somshivam
13
Unter Windows sind doppelte Anführungszeichen die einzige Wahl.
Chad
Vielen Dank. Ich habe dieses Problem mit einem doppelten Anführungszeichen in meinem Fenstersystem gelöst.
Bhavin Thummar
72

Ich möchte nur hinzufügen ...

In Windows sollte die Festschreibungsnachricht in doppelten Anführungszeichen ( git commit -m "initial commit"statt git commit -m 'initial commit') stehen, da ich ungefähr eine Stunde damit verbracht habe, herauszufinden, dass einfache Anführungszeichen in Windows nicht funktionieren.

Nicks
quelle
4
Windows-Benutzer schauen hier!
Shane
2
Ich komme aus der GitHub-Hilfe, wo Anführungszeichen einfach sind.
Bob Stein
Ich verwende git commit -m "first commit" und erhalte immer noch den gleichen Fehler unter Windows.
Multigoodverse
@nicks Vielen Dank, Sir!
haakym
Ja, ich komme aus der Bitbucket-Hilfe, die auch einfache Zitate zitierte
Kirill Yunussov
6

In meinem Fall war dieser Fehler auf Sonderzeichen zurückzuführen, die ich beim Kopieren des Befehls von einer Webseite als doppelte Anführungszeichen betrachtete.

Zeeawan
quelle
5

Ich habe herausgefunden, dass hier Fehler doppelte Anführungszeichen anstelle von einfachen Anführungszeichen verwenden.

ändere das

git commit -m 'initial commit'

zu

git commit -m "initial commit"

Sai Gopi ich
quelle
4

War mir dies beim Festschreiben von Xcode 6 passiert, nachdem ich dem Projektordner ein Verzeichnis mit Dateien und Unterverzeichnissen hinzugefügt hatte? Das Problem war, dass ich im Commit-Blatt in der linken Seitenleiste nicht nur das Stammverzeichnis, das ich hinzugefügt hatte, sondern auch alle seine Nachkommen markiert hatte. Um das Problem zu lösen, habe ich nur das Stammverzeichnis markiert. Dadurch wurden nach Wunsch auch alle Nachkommen fehlerfrei festgeschrieben.

Linux_Google
quelle
3

War mir dies beim Festschreiben von Xcode 6 passiert, nachdem ich dem Projektordner ein Verzeichnis mit Dateien und Unterverzeichnissen hinzugefügt hatte? Das Problem war, dass ich im Commit- Blatt in der linken Seitenleiste nicht nur das Stammverzeichnis, das ich hinzugefügt hatte, sondern auch alle seine Nachkommen markiert hatte. Um das Problem zu lösen, habe ich nur das Stammverzeichnis markiert. Dadurch wurden nach Wunsch auch alle Nachkommen fehlerfrei festgeschrieben.

Jerry Krinock
quelle
3

Bitte beachten Sie, dass es in Windows sehr wichtig ist, dass git commit -m "initial commit"der erste Commit-Text in doppelten Anführungszeichen steht. Einfache Anführungszeichen lösen einen Pfadspezifikationsfehler aus.


quelle
1

In meinem Fall war das Problem, dass ich einen falschen Alias ​​für verwendet habe git commit -m. Ich habe einen gcAlias ​​verwendet, der nicht gemeint wargit commit -m

TG
quelle
0

Wenn es jemanden gibt, der Python OS zum Aufrufen von Git verwendet, können Sie os.system verwenden ('git commit -m "' + str (Kommentar) + '"')

未来 陆家嘴 顶尖 的 投资 投资
quelle
0

Ich bin auf das gleiche Problem gestoßen. Meine Syntax hat kein Problem. Was ich gefunden habe ist, dass ich git commit -m "Kommentare" aus meiner Notiz kopiert und eingefügt habe. Ich tippe es erneut, der Befehl wird ohne Probleme ausgeführt. Es stellt sich heraus, dass - und "" das Problem sind, wenn ich das Einfügen in das Terminal kopiere.

Haibin Chen
quelle
0

In meinem Fall war das Problem, dass ich vergessen hatte, den Schalter -m vor dem zitierten Kommentar hinzuzufügen. Es kann auch ein häufiger Fehler sein, und die empfangene Fehlermeldung ist genau dieselbe

Javier D.
quelle