Как мне заставить Git показывать справку без какой-либо системы документирования на основе постраничного вывода, будь то info или man?

Как мне заставить Git показывать справку без какой-либо системы документирования на основе постраничного вывода, будь то info или man?

По умолчанию в системах Unix git отображает справку через man, что требует загрузки пейджера, что портит мой рабочий процесс. Когда я набираю git branch --help, я хочу, чтобы он отображал параметры в кратком изложении. Я привык набирать --helpпосле команды для получения сводок и набирать man <command>для страницы руководства. Мне не нужна страница руководства, когда я запрашиваю сводку параметров. Как мне указать Git использовать --helpдля сводок вместо -h?

решение1

(1) Измените обработку опций в исходном коде git и перекомпилируйте его. Вам нужно будет делать это снова и снова каждый раз, когда вы обновляете git.

(2) Напишите оболочку, которая вызывается вместо настоящего двоичного файла (поместив ее первой в PATH, или переименовав gitдвоичный файл), которая затем заменяется --helpи -hвызывает исходный двоичный файл.

Если вы ищете простое решение типа "просто установите эту конфигурацию, и она сделает это моим особым способом, который нужен только мне и никому другому": вы, вероятно, его не найдете. Если вы хотите настроить программное обеспечение под свои личные конкретные нужды, вам нужно над этим поработать.

решение2

Перейдите на страницу руководства напрямую. Для правильного форматирования требуется меньше.

 $ man git-diff | less | head -n 15

GIT-DIFF(1)                                                     Git Manual                                                     GIT-DIFF(1)

NAME
       git-diff - Show changes between commits, commit and working tree, etc

SYNOPSIS
       git diff [<options>] [<commit>] [--] [<path>...]
       git diff [<options>] --cached [--merge-base] [<commit>] [--] [<path>...]
       git diff [<options>] [--merge-base] <commit> [<commit>...] <commit> [--] [<path>...]
       git diff [<options>] <commit>...<commit> [--] [<path>...]
       git diff [<options>] <blob> <blob>
       git diff [<options>] --no-index [--] <path> <path>

DESCRIPTION
       Show changes between the working tree and the index or a tree, changes between the index and a tree, changes between two trees,

Вы также можете изменить, используя какой-либо фильтр, чтобы напечатать до DESCRIPTIONвместо использованияhead

Связанный контент