Как выйти из git журнала или git diff?
Я пытаюсь изучить Git с помощью Git Immersion. Там одна вещь, которая расстраивает меня, когда я использую git log
или git diff
:
![Git log shows (END) marker]()
Я не могу понять, что делать дальше, когда я сталкиваюсь с этим словом (END)
. Я не могу вводить какие-либо команды, и я заканчиваю закрытие текущего bash и открываю другое. Как мне ввести следующую команду, которую я хочу использовать?
Ответы
Ответ 1
Вы находитесь в программе less
, которая позволяет прокручивать вывод git log
.
Введите q, чтобы выйти из этого экрана. Введите h, чтобы получить справку.
Если вы не хотите читать вывод в пейджере и хотите, чтобы он был просто напечатан на терминале, определите переменную окружения GIT_PAGER
до cat
или установите core.pager
в cat
(выполните git config --global core.pager cat
).
Ответ 2
Вы можете нажать q для выхода.
git hist
использует инструмент пейджера, чтобы вы могли прокручивать вверх и вниз результаты перед возвратом на консоль.
Ответ 3
END
происходит от пейджера, используемого для отображения журнала (в данный момент все еще внутри него). Введите q, чтобы выйти из него.
Ответ 4
Добавьте следующий псевдоним в файл .bashrc
git --no-pager log --oneline -n 10
-
--no-pager
встретит слово (END)
-
-n 10
покажет только последние 10 коммитов
-
--oneline
покажет сообщение фиксации, игнорирует автора, информацию о дате
Ответ 5
На самом деле, есть три способа сделать это, точно.
Введите любую из следующих 3 команд.
- : q
- : z или
- Ctrl + z
PS: Иногда для кого-то один из этих вариантов не работает, а для других - работает.
Ответ 6
Я хотел бы дать некоторые комментарии к комментарию, который упоминал CTRL + Z как вариант. В конце концов, это будет зависеть от того, какая система у вас установлена Git и какая программа сконфигурирована для открытия текстовых файлов (например, less vs. vim). CTRL + Z работает для vim в Windows.
Если вы используете Git в среде Windows, есть некоторые причуды. Просто помогает понять, что они собой представляют. (т.е. Блокнот против Nano и т.д.).
Ответ 7
В этом случае, как можно было бы предположить, ввод q - это способ выйти из git log
(как и в большинстве других пейджеров или приложений, использующих пейджеры).
Как правило, если вы просто хотите прервать команду, выполняемую в настоящее время, вы можете попробовать ctrl+c (однако, похоже, что это не работает для git log
) или ctrl+z (хотя в bash, ctrl-z заморозит текущий выполняемый процесс переднего плана, который затем можно оттаивать как фоновый процесс с помощью команды bg
).