Пользовательский формат журнала пропускает новую строку в конце вывода - PullRequest
27 голосов
/ 25 января 2012

Я следую учебнику git по адресу gitimmersion.com и настроил псевдоним hist, чтобы показать пользовательский вывод симпатичного журнала.

Когда я отключаю пейджер git (устанавливая GIT_PAGER в ноль или в cat), вывод пропускает символ новой строки в конце.

Вот что я вижу:

work/lab_10$ git hist
* 88976c6 2011-01-19 | Added a comment (HEAD, v1, master) [Jim Weirich]
* b819ef8 2011-01-19 | Added a default value (v1-beta) [Jim Weirich]
* ff07fc9 2011-01-19 | Using ARGV [Jim Weirich]
* b73dc5c 2011-01-19 | First Commit [Jim Weirich]work/lab_10$

Обратите внимание, что приглашение оболочки отображается после последнего символа печатного вывода без перевода строки.

Для сравнения, вот что я вижу при использовании стандартного симпатичного формата:

work/lab_10$ git log --pretty=oneline
88976c644e65afa697b58fc940eb8f94c47f8129 Added a comment
b819ef832effdaea8c0e33b1fea36ea4071c61b9 Added a default value
ff07fc93d3e2e5522e5607c9952cbad10cfa1144 Using ARGV
b73dc5c1579756f4e9a4f91a90384c47288023b0 First Commit
work/lab_10$ 

В этом случае появляется новая строка перед следующей подсказкой.

Вот определение псевдонима:

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

Есть ли способ указать git log включить последний перевод строки, когда я не использую пейджер?

1 Ответ

55 голосов
/ 25 января 2012

Попробуйте

hist = log --pretty="tformat:\"%h %ad | %s%d [%an]\"" --graph --date=short

format ставит новые строки между коммитами, tformat ставит новые строки после каждого коммита, таким образом также после последнего.

Подробнее см. git-log (1) .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...