Как сделать git log украсить по умолчанию

22

Я часто набираю git log , когда я действительно хочу, git log --decorate . Как сделать его украшением по умолчанию?

Я видел много ответов в форме «сделайте псевдоним lg , а затем введите git lg вместо git log». Но я не могу найти, как изменить поведение по умолчанию самого git-журнала. alias log не работает.

    
задан Benubird 06.02.2014 в 16:39
источник
  • Git не позволяет алиасам теневать существующие команды, поэтому вы не можете создать псевдоним, называемый журналом. –  Chris 06.02.2014 в 17:11
  • Примечание: Git 2.1 теперь предлагает decorate = auto. См. Мой ответ ниже –  VonC 02.08.2014 в 18:47
  • Примечание bis (3 года спустя): с предстоящим Git 2.13, -decorate становится значением по умолчанию для git-журнала: см. мой пересмотренный ответ ниже. –  VonC 17.04.2017 в 01:29

2 ответа

36

git config log.decorate auto

для глобальной настройки добавьте параметр --global .

, поэтому это будет git config --global log.decorate auto

Алиасы создаются с помощью git config alias.lg "log --decorate"

Изменить: обновлен log.decorate true до auto на основе ответа от VonC, так как теперь это рекомендуемый способ.

    
ответ дан Jakub 06.02.2014 в 16:47
источник
15

Обновление апреля 2017 года, спустя 3 года:

С Git 2.13 (Q2 2017) нет необходимости в настройке: --decorate по умолчанию!

См. commit 940a911 (24 марта 2017 г.) Алекс Хенри ( alexhenrie ) .
(Слияние Юнио С Хамано - gitster - - в совершить d9758cf , 11 апреля 2017 г.)

  

Поведение по умолчанию « git log » в интерактивном сеансе   был изменен, чтобы включить « --decorate ».

Оригинальный ответ (середина 2014 года)

Примечание. Начиная с git 2.1.0-rc0 (июль 2014 года), сам Линус Торвальдс ввел опцию decorate=auto .
Это более точно, чем просто decorate=true , особенно для целей создания скриптов, как описано ниже.

Смотрите фиксацию 1571586 Линус Торвальдс (торвальдс) :

  

Это работает как « --color=auto » - добавлять декорации для интерактивного использования, но не меняет значения по умолчанию при написании сценариев или при подключении вывода к чему-либо, кроме терминала .

     

Вы можете использовать

[log]
     decorate=auto
  

в файлах конфигурации git или в командной строке « --decorate=auto », чтобы выбрать это поведение.

    
ответ дан VonC 02.08.2014 в 18:47
источник
  • git config - global log.decorate auto? –  myol 03.02.2016 в 11:41
  • @myol да, это будет синтаксис для использования. –  VonC 03.02.2016 в 12:40