Как я могу заставить 'состояние мерзавца' всегда использовать сокращенный формат?

Я хотел бы git status всегда использовать сокращенный формат:

$ git status --short
 M file1
 M dir/file2
?? file_untracked3
?? dir/file_untracked4

Там, кажется, не существует параметр конфигурации для этого, и git config --global alias.status "status --short" не работает. Мне не удалось создать псевдоним в zsh также.

Как я могу сделать git status использовать сокращенный формат по умолчанию?

40
задан user905686 15 June 2016 в 12:47
поделиться

3 ответа

Самый простой способ - использовать другой псевдоним, как я предлагаю в своем комментарии. Думаю, нет возможности создать псевдоним с названием встроенной команды. Если вы настаиваете на использовании git status , другой вариант (git в конце концов - открытый исходный код):

  • получить исходный код git (например, http://github.com/git/git / )
  • откройте файл builtin / commit.c
  • найдите функцию int cmd_status (int argc, const char ** argv, const char * prefix)
  • в внизу вы найдете оператор-переключатель
  • , закомментировавший две строки, как показано в следующем коде
  • , добавьте строку, как в следующем коде

code:

...
switch (status_format) {
    case STATUS_FORMAT_SHORT:
        wt_shortstatus_print(&s, null_termination);
        break;
    case STATUS_FORMAT_PORCELAIN:
        wt_porcelain_print(&s, null_termination);
        break;
    case STATUS_FORMAT_LONG:
        //s.verbose = verbose;      <--lines have to be commented out
        //wt_status_print(&s);
        wt_shortstatus_print(&s, null_termination);    //<-- line has to be added
        break;
    } 
 ...
  • remake git
7
ответ дан 27 November 2019 в 01:33
поделиться

Вы можете создать псевдоним .

Но я бы создал сценарий bash:

#!/bin/bash
git status --short

сохраните этот сценарий в ~ / bin / gits (или / usr / bin / gits и chmod 555 ), поэтому ввод gits дает то, что вам нужно.

0
ответ дан 27 November 2019 в 01:33
поделиться

Используйте другой псевдоним. Вместо псевдонима 'status', сделайте:

git config --global alias.s 'status --short'

Теперь "git s" дает короткий вывод, а "git status" дает длинный вывод.

34
ответ дан 27 November 2019 в 01:33
поделиться
Другие вопросы по тегам:

Похожие вопросы: