Git - Bagaimana cara menutup komit editor?

209

Saya baru mengenal git dan belajar dari PDF. Saya baru saja menjalankan perintah $ git commitdan itu membuka editor baru. Tapi saya mencoba menutup editor komit baru itu. Bagaimana cara melakukannya? Saya menggunakan git di windows.

aniskhan001
sumber
bukan jawaban yang lengkap, tetapi salah satu cara untuk menghindari editor adalah dengan menggunakan opsi "-m". Misal setelah $ git tambahkan <nama_perubahan>, lalu lakukan $ git komit -m "perubahan saya; saya menghindari editor!"
Quetzalcoatl

Jawaban:

242

Simpan file di editor. Jika itu Emacs: CTRLX CTRLSuntuk menyimpan maka CTRLX CTRLCuntuk keluar atau jika itu vi::wq

Tekan escdulu untuk keluar dari pengeditan. (di windows / vi)

tpg2114
sumber
3
Pengguna perlu menutup editor selain menyimpan file, jadi untuk Emacs sebenarnya Ctrl-X Ctrl-C.
user4815162342
1
Diperbarui ... Saya tahu itu, tetapi seperti kebanyakan perintah emacs, mereka begitu mendarah daging dalam diri saya sehingga saya lupa apa itu ... Saya hanya melakukannya.
tpg2114
Jika Anda menggunakan emacsclient, Anda dapat menutupnya denganC-x #
azzamsa
1
terima kasih, pada windows bash tidak jelas bahwa Anda harus 1: keluar dan 2: menyimpan perubahan
Juan Monsalve
Apakah mode penyisipan ini sesuatu yang dapat saya nonaktifkan pada mesin windows saya?
Rez.Net
201

Punya masalah juga. Di Linux saya menggunakan Ctrl+ X(dan Yuntuk mengkonfirmasi) dan kemudian saya kembali ke shell siap untuk menarik / mendorong.

Pada Windows GIT Bash Ctrl + Xtidak akan melakukan apa-apa dan ternyata berfungsi cukup seperti vi / vim. Tekan iuntuk masuk ke mode sisipkan sebaris. Ketikkan deskripsi di bagian paling atas, tekan escuntuk keluar dari mode sisipkan, lalu ketik :x!(sekarang kursor ada di bagian bawah) dan tekanenter untuk menyimpan dan keluar.

Jika mengetik :q!sebagai gantinya, akan keluar dari editor tanpa menyimpan (dan komit akan dibatalkan)

Marc Compte
sumber
18
ini jawaban saya untuk windows
lode
1
esc: x! - Ini bukan hanya tidak dapat ditemukan, seolah-olah seseorang sedang bermain petak umpet dengan fungsionalitas.
Tristan
45

Setelah menulis pesan komit, cukup tekan Tombol Esc dan kemudian tulis : wq atau : wq! dan kemudian Enter untuk menutup file unix.

chandan gupta
sumber
6
solusi ini adalah yang bekerja pada Git Gui bash for window
ocrampico
! Ini mengingatkan saya pada masa-masa Universitas, ketika kami melakukan beberapa hal penyuntingan Unix vi, setelah lama menulis beberapa :wqperintah
Irf
:xadalah jalan pintas untuk :wqdi Vim.
rnevius
19

Lebih baik lagi, konfigurasikan editor ke sesuatu yang Anda sukai (gedit sebagai contoh):

git config --global core.editor "gedit"

Anda dapat membaca konfigurasi saat ini seperti ini:

git config core.editor

Anda juga dapat menambahkan pesan komit dari baris perintah.

git commit -m "blablabla"

dan editor tidak akan dibuka sejak awal.

Martin G
sumber
7

Setelah git commitperintah, Anda masuk ke editor, jadi tekan pertama ilalu mulai mengetik. Setelah melakukan klik pesan Anda Ctrl + ckemudian:wq

Mohammad Hashemi
sumber
4

Alternatif untuk Nano (mungkin membuat hidup Anda lebih mudah):

Di Windows, gunakan notepad. Pada command prompt ketik:

git config core.editor notepad

Di Ubuntu / Linux, gunakan editor teks (gedit). Jenis jendela terminal:

git config core.editor gedit

ggootz
sumber
1

Sebagai alternatif untuk 'simpan & keluar', Anda dapat menggunakan fungsi git-commit git-commit-commit, terikat standar C-c C-c. Ini akan menyimpan file dan menutupnya. Setelah itu, Anda masih harus menutup emacs C-x C-c, seperti yang disebutkan sebelumnya. Saat ini saya sedang berusaha mencari tahu cara membuat emacs berhenti secara otomatis.

Martin
sumber
1

Saya punya masalah ini, saya menerima prompt seperti "" dan saya tidak bisa melakukan. Saya mengganti "di komentar dengan 'dan berfungsi.

Saya harap ini membantu seseorang!

Mariano Cali
sumber
Aha! Saya telah terjebak dengan prompt ini juga. Dari membaca komentar Anda, saya tahu bahwa karena saya telah menggunakan tanda kutip dalam kontraksi dalam komentar saya, terminal menunggu saya untuk menutup kutipan! Akhirnya saya bebas!
Kevin Scharnhorst
0

Tidak yakin kombinasi tombol yang membawa Anda ke> prompt tetapi bukan bash prompt yang saya tahu. Saya biasanya mendapatkannya secara tidak sengaja. Ctrl + C (atau D) membuat saya kembali ke $ prompt.

dubfactor
sumber
0

Perhatikan bahwa jika Anda menggunakan Sublime sebagai editor komit Anda, Anda memerlukan -n -wbenderanya , jika tidak git akan terus berpikir pesan komit Anda kosong dan dibatalkan.

Siddhartha
sumber
0

Di Mac 1.Tekan shift + Z shift + Z (modal Z dua kali).

A_Mo
sumber