Błąd zatwierdzenia git: pathspec 'commit' nie pasuje do żadnego pliku (ów) znanych gitowi


89

Próbuję przesłać aplikację Ruby do Heroku. Zaczynam od, git initpotem piszę, git add .a potem używam git commit -m initial commit.

Za każdym razem, gdy używam git commit -m, otrzymuję komunikat o błędzie:

Błąd zatwierdzenia git: pathspect 'commit' nie pasuje do żadnego pliku (ów) znanych gitowi.

Powiedziano mi, że tak się dzieje, ponieważ argumenty są w złej kolejności.

Zauważyłem, że kiedy git add .go używam , nie wyświetla listy plików, które są dodawane, ponieważ po prostu przejdzie do następnej linii.

Podejrzewam, że mam ten problem, ponieważ moje pliki tak naprawdę nie są dodawane.

Byłbym wdzięczny za każdą radę, jak rozwiązać ten problem.

Odpowiedzi:


198

Argumenty wiersza poleceń są oddzielone spacjami. Jeśli chcesz podać argument zawierający spację, zacytuj go. Więc użyj git commit -m "initial commit".


34
git commit -m pojedynczy cudzysłów 'początkowe zatwierdzenie' nie działał dla mnie, używam go w środowisku Windows.
somshivam

15
W systemie Windows jedynym wyborem są cudzysłowy.
Leo

Dziękuję Ci bardzo. Rozwiązałem to za pomocą podwójnego cudzysłowu w moim systemie okiennym.
Bhavin Thummar

Oszczędzanie dnia, w ogóle nie użyłem cudzysłowów (podwójnych pojedynczych), więc zawiodło z powodu spacji.
Timo

VScode w systemie Linux również potrzebuje podwójnych.
Timo

74

Chciałbym tylko dodać -

W oknach komunikat o zatwierdzeniu powinien być w podwójnych cudzysłowach ( git commit -m "initial commit"zamiast git commit -m 'initial commit'), ponieważ spędziłem około godziny, aby dowiedzieć się, że pojedynczy cudzysłów nie działa w oknach.


4
Użytkownicy systemu Windows zajrzyj tutaj!
Shane,

2
Pochodzące z Pomocy GitHub, gdzie cytaty są pojedyncze.
Bob Stein

Używam git commit -m „first commit” i nadal otrzymuję ten sam błąd w systemie Windows.
multigoodverse

@nicks Dziękuję panu!
haakym

tak, pochodzi z pomocy bitbucket, która również zacytowała pojedyncze cytaty
Kirill Yunussov

6

W moim przypadku ten błąd był spowodowany znakami specjalnymi, które rozważałem jako podwójne cudzysłowy, gdy kopiowałem polecenie ze strony internetowej.


5

Pomyliłem się tutaj, używając podwójnych cudzysłowów zamiast pojedynczych cytatów.

Zmień to

git commit -m 'initial commit'

do

git commit -m "initial commit"


4

Czy zdarzyło mi się to podczas zatwierdzania z Xcode 6, po dodaniu katalogu plików i podkatalogów do folderu projektu. Problem polegał na tym, że w arkuszu Commit na lewym pasku bocznym zaznaczyłem nie tylko katalog główny, który dodałem, ale także wszystkie jego elementy potomne. Aby rozwiązać problem, zaznaczyłem tylko katalog główny. To również popełniło wszystkich potomków, zgodnie z życzeniem, bez żadnego błędu.


3

Czy zdarzyło mi się to podczas zatwierdzania z Xcode 6, po dodaniu katalogu plików i podkatalogów do folderu projektu. Problem polegał na tym, że w arkuszu Commit , na lewym pasku bocznym, zaznaczyłem nie tylko katalog główny, który dodałem, ale także wszystkie jego elementy potomne. Aby rozwiązać problem, zaznaczyłem tylko katalog główny. To również popełniło wszystkich potomków, zgodnie z życzeniem, bez żadnego błędu.


3

Zwróć uwagę, że w oknach bardzo ważne git commit -m "initial commit"jest, aby początkowe teksty zatwierdzenia były umieszczone w podwójnych cudzysłowach. Pojedyncze cudzysłowy spowodują wyświetlenie błędu specyfikacji ścieżki.


1

W moim przypadku problem polegał na tym, że użyłem złego aliasu dla git commit -m. Użyłem gcaliasu, który nie miał na myśligit commit -m



0

Napotkałem ten sam problem. moja składnia nie ma problemu. Okazało się, że skopiowałem i wkleiłem git commit -m „komentarze” z mojej notatki. Wpisuję ponownie, polecenie wykonuje się bez problemu. Okazuje się, że - i „” są problemem podczas kopiowania wklejania do terminala.


0

W moim przypadku problem polegał na tym, że zapomniałem dodać przełącznik -m przed cytowanym komentarzem. Może to być również typowy błąd, a otrzymany komunikat o błędzie jest dokładnie taki sam

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.