Bagaimana cara keluar dari daftar 'git status' di terminal?

340

Saya baru mengenal Git dan terminal. Bagaimana saya bisa keluar dari mode daftar yang dihasilkan oleh git statusperintah?

Luis Martins
sumber

Jawaban:

501

Saya harus menebak di sini, tetapi git mungkin menjalankan outputnya ke dalam program $ PAGER Anda, mungkin lessatau more. Dalam kedua kasus tersebut, mengetik qharus membuat Anda keluar.

Carl Smotricz
sumber
10
Pager yang digunakan oleh git dipilih oleh core.pagervariabel konfigurasi (jika diatur), maka variabel lingkungan GIT_PAGER, kemudian variabel lingkungan PAGER, kemudian lesssebagai fallback.
Jakub Narębski
2
Terima kasih lagi, Sebagian besar waktu saya gunakan untuk memulai dari awal lagi. Saya juga seorang pemula ..
Sayari
4
Terima kasih! Ini adalah hadiah dari Zeus di tempat tinggi. Anda baru saja menyelamatkan pantat saya dari Googling.
Padawan
152
:q

itu perintah yang kurang , sebenarnya. Ia menggunakan perintah yang sama seperti vi .

RageZ
sumber
9
Jika kurang, maka tidak ada titik dua (:) diperlukan. Anda berpikir jika vi!
Carl Smotricz
2
Jika Anda mendapatkan kesalahan E37: Tidak menulis sejak perubahan terakhir (tambahkan! Untuk menimpa) , lakukan apa yang dikatakan dan gunakan:q!
Noumenon
1
:qadalah apa yang diperlukan untuk saya meskipun terminal di dalam less.exe hanya q tidak melakukan apa pun. Terima kasih @RageZ
Chris Marisic
kau telah menyelamatkan hidupku.
AKJ
106

Ketik 'q' dan itu akan melakukan pekerjaan.

Setiap kali Anda berada di terminal dan memiliki kesulitan yang sama, ingat juga untuk mencoba dan mengetik 'berhenti', 'keluar' serta kombinasi tombol batalkan 'Ctrl + C'.

allesklar
sumber
4
Saya menggunakan 'Ctrl + Z' dan berakhir dengan satu ton proses git yang tidak terkendali ketika saya berlari ps -ax. Tidak tahu q.
brokenindexfinger
3
Ctrl + Z menempatkan tugas di latar belakang, sehingga masuk akal. Saya pribadi tidak bisa mendapatkan Ctrl + C untuk menutupnya. q bekerja.
Amalgovinus
Ctrl + C dan Ctrl + X tidak berfungsi, hanya :qbisa keluar untuk saya.
Chris Marisic
Saya mengetik ya untuk pertanyaan yang meminta saya untuk mengetik ya atau tidak. Saya menekan q, escdan banyak tombol lainnya dan tidak ada yang berfungsi sampai saya bisa menemukan CTRL + Cdan membuat saya keluar!
Mohammed Mishal
15

untuk windows:

Ctrl + q dan c untuk keluar dari situasi yang sedang berjalan.

gem007bd
sumber
13

qatau SHIFT+ qakan melakukan trik. Ini akan membuat Anda keluar dari banyak sesi halaman bergulir luas seperti git status, git show HEAD, git diffdll ini tidak akan keluar jendela atau mengakhiri sesi Anda.

SovietFrontier
sumber
7

Kombo pilihan saya adalah Gq, yang mencetak semua diff dan kemudian keluar.

Anda dapat mengetik huntuk menampilkan perintah bantuan untuk berinteraksi dengan lebih sedikit, yang mencetak ini ke konsol:

                   SUMMARY OF LESS COMMANDS

      Commands marked with * may be preceded by a number, N.
      Notes in parentheses indicate the behavior if N is given.

  h  H                 Display this help.
  q  :q  Q  :Q  ZZ     Exit.
 ---------------------------------------------------------------------------

                           MOVING

  e  ^E  j  ^N  CR  *  Forward  one line   (or N lines).
  y  ^Y  k  ^K  ^P  *  Backward one line   (or N lines).
  f  ^F  ^V  SPACE  *  Forward  one window (or N lines).
  b  ^B  ESC-v      *  Backward one window (or N lines).
  z                 *  Forward  one window (and set window to N).
  w                 *  Backward one window (and set window to N).
  ESC-SPACE         *  Forward  one window, but don't stop at end-of-file.
  d  ^D             *  Forward  one half-window (and set half-window to N).
  u  ^U             *  Backward one half-window (and set half-window to N).
  ESC-)  RightArrow *  Left  one half screen width (or N positions).
  ESC-(  LeftArrow  *  Right one half screen width (or N positions).
  F                    Forward forever; like "tail -f".
  r  ^R  ^L            Repaint screen.
  R                    Repaint screen, discarding buffered input.
        ---------------------------------------------------
        Default "window" is the screen height.
        Default "half-window" is half of the screen height.
 ---------------------------------------------------------------------------

                          SEARCHING

  /pattern          *  Search forward for (N-th) matching line.
  ?pattern          *  Search backward for (N-th) matching line.
  n                 *  Repeat previous search (for N-th occurrence).
  N                 *  Repeat previous search in reverse direction.
  ESC-n             *  Repeat previous search, spanning files.
  ESC-N             *  Repeat previous search, reverse dir. & spanning files.
  ESC-u                Undo (toggle) search highlighting.
        ---------------------------------------------------
        Search patterns may be modified by one or more of:
        ^N or !  Search for NON-matching lines.
        ^E or *  Search multiple files (pass thru END OF FILE).
        ^F or @  Start search at FIRST file (for /) or last file (for ?).
        ^K       Highlight matches, but don't move (KEEP position).
        ^R       Don't use REGULAR EXPRESSIONS.
 ---------------------------------------------------------------------------

                           JUMPING

  g  <  ESC-<       *  Go to first line in file (or line N).
  G  >  ESC->       *  Go to last line in file (or line N).
  p  %              *  Go to beginning of file (or N percent into file).
  t                 *  Go to the (N-th) next tag.
  T                 *  Go to the (N-th) previous tag.
  {  (  [           *  Find close bracket } ) ].
  }  )  ]           *  Find open bracket { ( [.
  ESC-^F <c1> <c2>  *  Find close bracket <c2>.
  ESC-^B <c1> <c2>  *  Find open bracket <c1> 
        ---------------------------------------------------
Blake Regalia
sumber
5

pertama-tama Anda perlu mengatur preferensi akhir baris di termnial

git config --global core.autocrlf input
git config --global core.safecrlf true

Maka Anda bisa menggunakannya :q

Jamanius
sumber
1
Satu catatan untuk pengguna Windows: Bagi saya, menambahkan baris ini mengakibatkan ketidakmampuan untuk menambahkan file ke pelacakan (fatal: CRLF akan diganti oleh LF di README.md). Jadi jika Anda menggunakan Windows, silakan tambahkan git config --global core.autocrlf truesaja, itu akan melakukan pekerjaan.
ConcurrentHashMap
4

Anda dapat menonaktifkan pager untuk perintah yang tidak mengenali --no-pagerflag.

git config --global pager.<command> false

Saya menonaktifkan alias log dan mengatur jumlah tertentu untuk kembali.

git config --global pager.log false
James Morgan
sumber
3

Sebelum menekan perintah keluar (q, dll.) Periksa bahasa input saat ini: jika bukan perintah bahasa Inggris mungkin tidak berfungsi.

papandreus
sumber
3

Crt + c bekerja untuk Windows! pengguna1852392

PythonLearner
sumber
3

Silakan coba langkah-langkah ini di git bash, Ini mungkin membantu Anda.

  1. CTRL + C
  2. :qa!
Md. Rejaul Karim
sumber
1

Jika Anda menghadapi ini?

masukkan deskripsi gambar di sini Terkadang ada kemungkinan bahwa saat menulis di Gitbash Anda masuk ke> dan Anda tidak bisa keluar dari itu.
Ini terjadi pada saya cukup sering ketika saya mengetik 'secara tidak sengaja di Gitbash (Lihat di gambar).

Bagaimana mengatasi ini di Mac?

kontrol + C

Saya belum memeriksanya di Windows. Tetapi jika itu silakan edit dalam jawaban saya.

Rohit Singh
sumber
0

Jika Anda menggunakan git bash, coba gunakan exit;

Saya mencoba menggunakan q atau ctrl + q tetapi mereka tidak bekerja pada bash.

Govin
sumber
-4

exitmelakukannya untukku. Hasil saya setelah menekan kembali;

my-mac:Car Game mymac$ exit
logout
Saving session...
...copying shared history...
...saving history...truncating history files...
    ...completed.
[Process completed]
Ronny Kibet
sumber
ini sama dengan menutup seluruh jendela, pertanyaan meminta untuk keluar dari sesi git seperti di ssh
yosemite_k