Ketika saya menjalankan git branch
(dari bash atau csh), ia secara otomatis menyalurkan output less
. Namun, dengan hanya beberapa cabang di repositori ini tidak perlu, itu menjengkelkan, karena daftar cabang menghilang begitu saya berhenti lebih sedikit.
Memeriksa ~/.gitconfig
file dan .git/config
file lokal tidak menemukan apa pun tentang pager atau hal lain yang menyebabkannya. Kalau tidak, tidak ada yang saya temukan dalam pencarian web yang membantu atau menjanjikan.
Mengapa ini terjadi, dan apa (jika ada) yang dapat saya lakukan untuk less
berlari ketika dibutuhkan (misalnya ketika melakukan git log
ketika ada banyak sejarah) tetapi tidak sebaliknya (seperti git branch
hanya dengan 2 atau 3 cabang)?
export LESS=-X
dalam.profile
. Ini menjaga kurang dari "membersihkan" layar. Saya benci bahwa pengaturan standar membersihkan layar karena saya sering perlu memotong dan menempelkan barang atau menggunakannya sebagai referensi.Jawaban:
Anda dapat mengatur yang berikut ini:
Ini akan memastikan bahwa
less
akanF
)R
)Potong garis panjang (S
)X
)Sunting: Menghapus
S
opsi berdasarkan komentar Peter A. Scheidersumber
--global
jika Anda hanya ingin menerapkan ke repositori saat ini.LESS
untuk-FR
, menambahkan dalam X dan S dengan selera adalah cara lain.export PAGER='less -FRSX'
dan git akan menghormatinya (tidak ada konfigurasi git tertentu). Btw,-S
berbahaya karena diam-diam membuang output.Ada beberapa jawaban bagus untuk
less
perilaku tuning , tetapi karena jari kelabu saya terbiasa mengetik|more
ketika saya menginginkannya, dan karena saya masih lebih selaras dengan lincah daripada dengan git, saya tertarik padasumber
git-config
menyatakan bahwa nilaicore.pager
dimaksudkan untuk ditafsirkan oleh shell. Ketika Anda mengaturnyano
, ia mencoba untuk mengeksekusi perintahno
, yang kemungkinan besar tidak ada, maka itu kembali ke hanya mengeluarkan konten. Anda masih akan melihat pesan kesalahan di kepala. Yang mungkin ingin Anda lakukan adalah mengaturnyacat
.cat
ada gunanya, dan saya khususnya tidak percaya Linux menggunakan pengelola untuk tidak mengubah apa yang dilakukan kucing (lih. File kutip yangls
dikutip ). Mungkin saya harus menggunakan "jangan pernah" sebagai gantinya. Kecil kemungkinan program seperti itu ada.core.pager
ke string kosong (git config core.pager ''
) atau untuk tidakcat
akan menjalankan apa pun. Anda dapat mengatasinya sendiri jika Anda tidak percaya ;-) Tidak ada alasan apa pun untuk mengubahnya menjadi perintah dummy .no
cat
, apakah Anda mengatakan bahwa git memiliki kasus khusus untuk string dalam kode pager - yaitu yangcat
secara efektif merupakan sinonim untuk "null"? Saya berharap untuk mengeksekusicat
.