git commit error: pathspec 'commit' non corrisponde ad alcun file noto a git


89

Sto cercando di caricare un'app Ruby su Heroku. Inizio con git inite poi digito git add .e poi utilizzo git commit -m initial commit.

Ogni volta che lo uso git commit -m, ricevo un messaggio di errore che dice:

git commit error: pathspect 'commit' non corrisponde ad alcun file noto a git.

Mi è stato detto che questo sta accadendo perché gli argomenti sono nell'ordine sbagliato.

La cosa che ho notato è che quando lo uso git add .non elencherà i file che vengono aggiunti perché andrà semplicemente alla riga successiva.

Sospetto di avere questo problema perché i miei file non vengono realmente aggiunti.

Apprezzerei qualsiasi consiglio su come correggere questo problema.

Risposte:


197

Gli argomenti della riga di comando sono separati da uno spazio. Se vuoi fornire un argomento con uno spazio, dovresti citarlo. Quindi usa git commit -m "initial commit".


34
git commit -m virgolette singole 'commit iniziale' non funzionava per me, lo sto usando in un env di Windows.
somshivam

14
Su Windows, le virgolette doppie sono l'unica scelta.
Leone

Grazie mille. Ho risolto questa cosa con virgolette doppie nel mio sistema di finestre.
Bhavin Thummar

Risparmio di giorno, non ho usato affatto virgolette (doppie-singole), quindi non è riuscito a causa degli spazi.
Timo

VScode su Linux richiede anche i doppi.
Timo

74

Vorrei solo aggiungere ...

In Windows il messaggio di commit dovrebbe essere tra virgolette doppie ( git commit -m "initial commit"invece di git commit -m 'initial commit'), poiché ho impiegato circa un'ora, solo per capire che le virgolette singole non funzionano in Windows.


4
Gli utenti Windows guardano qui!
Shane

2
Proveniente dalla Guida di GitHub dove le virgolette sono singole.
Bob Stein

Sto usando git commit -m "first commit" e continuo a ricevere lo stesso errore su Windows.
multigoodverse

@nicks Grazie signore!
haakym

sì, proveniente da bitbucket help, che ha anche citato virgolette singole
Kirill Yunussov

6

Nel mio caso, questo errore era dovuto a caratteri speciali che stavo considerando virgolette doppie mentre copiavo il comando da una pagina web.


5

Ho scoperto che l'errore qui usa virgolette doppie invece di virgolette singole.

cambia questo

git commit -m 'initial commit'

per

git commit -m "initial commit"


4

Se questo fosse successo a me durante il commit da Xcode 6, dopo aver aggiunto una directory di file e sottodirectory alla cartella del progetto. Il problema era che, nel foglio Commit, nella barra laterale di sinistra, avevo spuntato non solo la directory root che avevo aggiunto, ma anche tutti i suoi discendenti. Per risolvere il problema, ho spuntato solo la directory principale. Questo ha anche commesso tutti i discendenti, come desiderato, senza errori.


3

Se questo fosse successo a me durante il commit da Xcode 6, dopo aver aggiunto una directory di file e sottodirectory alla cartella del progetto. Il problema era che, nel foglio Commit , nella barra laterale di sinistra, avevo spuntato non solo la directory root che avevo aggiunto, ma anche tutti i suoi discendenti. Per risolvere il problema, ho spuntato solo la directory principale. Questo ha impegnato anche tutti i discendenti, come desiderato, senza errori.


3

Tieni presente che in Windows è molto importante che il git commit -m "initial commit"testo del commit iniziale sia tra virgolette doppie. Le virgolette singole genereranno un errore di specifica del percorso.


1

Nel mio caso, il problema era che ho usato un alias sbagliato per git commit -m. Ho usato gcalias che non significava ditgit commit -m



0

Ho riscontrato lo stesso problema. la mia sintassi non ha problemi. Quello che ho scoperto è che ho copiato e incollato git commit -m "commenti" dalla mia nota. Lo riscrivo, il comando viene eseguito senza problemi. Si scopre che - e "" sono il problema quando copio e incolla sul terminale.


0

Nel mio caso il problema era che avevo dimenticato di aggiungere l'opzione -m prima del commento citato. Potrebbe anche essere un errore comune e il messaggio di errore ricevuto è esattamente lo stesso

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.