Чому я повинен натиснути "Q" в кінці "git log"?


79

Розглянемо:

git log -n 20 --pretty=oneline

Я кажу Git, що мені потрібно бачити лише останні 20 комітів. Ненавиджу бити, Qщоб позбутися END. Чи є вихід, щоб мені не довелося бити Q?

Відповіді:


83

Git автоматично підкачує вихідні дані для вас, оскільки журнали, як правило, легко переповнюють розмір вікна одного терміналу (ви в одному з рідкісних винятків - однорядковий формат і невеликий ліміт комітів). Якщо ви цього не хочете, використовуйте:

git --no-pager log -n 20 --pretty=oneline

Зверніть увагу, що це означає, що ви отримаєте потворну упаковку, тому що раніше пейджер вимикав для вас обтікання (оскільки ви могли використовувати клавіші курсору для прокрутки вліво-вправо).


4
@DeckTrout Без будь-якої інформації ніхто не може вам допомогти. Якщо вам вдається конкретизувати налаштування, спробуйте задати нове запитання. Ця відповідь спрацювала для ОП тут (і для багатьох інших), тому, очевидно, для вас щось інше.
Cascabel

1
Додати l = !git --no-pager log -n 20 --pretty=onelineв .gitconfigстворити псевдонім ..
saveshodhan

У Git для Windows це змінює основний момент "комітувати вставку-хеш-тут" з помаранчевого на жовтий.
Unknow0059

26

Ви можете "вимкнути" підкачування git, наказавши йому використовувати cat замість менше. Після цього прокладіть вихід через менше, коли ви хочете підкачати сторінку, або головою, якщо ви просто хочете побачити верхню частину тощо.

git config --global core.pager cat

Я вимикаю автоматичне підкачування, тому що часто запускаю git зсередини emacs, який ні потребує, ні добре не працює з меншим.


Мій журнал git не закінчується новим рядком, тому підказка оболонки після журналу знаходиться в тому самому рядку, що і мій найстаріший коміт. Тим не менше, дякую.
Кенні Расшарт

13

lessприймає -Fаргумент для автоматичного виходу, якщо вміст вміщується на одному екрані


8

git log -n 20 --pretty=oneline | cat

трохи коротший, ніж --no-pagerваріант, але також видалить усі наявні кольори.


8

Якщо ви хочете використовувати --no-pagerпсевдонім, налаштуйте його таким чином:

hist = !git --no-pager log --pretty=format:\"%h %ad | %s%d [%an]\" --graph --date=short

0

Q використовується для закриття програми командного рядка, яка використовується для перегляду журналів ...

Ви можете використовувати інший переглядач журналу, наприклад gitk:

gitk -n 20

gitk корисний для перегляду графіків тощо. Я шукав полегшеного рішення. Дякую.
Нік Вандербільт

0

Псевдонім для команди журналу, де вам не потрібно натискати, qщоб зникнути:

git config --global alias.hist '!git --no-pager log --pretty=format:"%h %ad | %s%d [%an]" --graph --date=short --max-count=10'
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.