Risposte:
Hai due opzioni:
Fornire un messaggio di commit vuoto. Se si tratta di un nuovo commit e non hai ancora salvato il messaggio, puoi semplicemente utilizzare :q!(esci senza salvare). Se hai già salvato (o stai modificando un commit precedente), elimina l'intero messaggio di registro e salva di nuovo. Questo può essere fatto con ggdG+ :wqin Vim.
Avere l'editor uscire con un codice di uscita diverso da zero. In Vim, puoi usare :cq(esci con un codice di errore).
Vale la pena notare che è sempre possibile ripristinare la copia di lavoro allo stato in cui si trovava prima del commit con git reset HEAD^.
git reset HEAD^chiede di più, la shell può interpretare ^ come continuazione della linea. Prova git reset "HEAD^", git reset HEAD^^o git reset HEAD~1invece per questa risposta: stackoverflow.com/questions/14203952/git-reset-asks-more
:q!non funziona quando si modifica un commit. Non aggiorna il messaggio di commit, ma esegue la modifica :-(:cq interrompe completamente l'emendamento.Per riassumere:
git commit), Chiudere usando :q!.git commit --amend) rimuovere il messaggio di commit (solo le prime poche righe che non iniziano con un #), ad esempio tenendo premuto v e usando i tasti freccia per selezionarlo e quindi premendo Elimina. Esci con :wqper applicare le modifiche ! Se si utilizzano :q!le modifiche andranno perse e verrà utilizzato il messaggio di commit precedente.Quando si utilizza VIM, va bene in entrambi i casi uscire con :cq- VIM si chiuderà con un codice di errore e il commit verrà interrotto.
:q!per uscire da VIM.