Git покажет все ветки (но не тайники) в логе - PullRequest
71 голосов
/ 24 февраля 2012

У меня есть псевдоним Git, который расширяется до:

git log --graph --oneline --all --decorate

Согласно man git log есть несколько подозрительных опций: --not и --branches;но я не могу заставить его работать должным образом.

Как мне отредактировать это, чтобы скрыть тайники?


К вашему сведению : согласно принятому вопрос и комментарий мой .gitconfig псевдоним теперь выглядит следующим образом:

[alias]
    l = log --branches --remotes --tags --graph --oneline --decorate --notes HEAD

Ответы [ 3 ]

103 голосов
/ 25 февраля 2012

Вместо того, чтобы делать --all и затем пытаться отфильтровать тайники, никогда не включайте их в первую очередь:

git log --branches --remotes --tags --graph --oneline --decorate

Основная проблема, которая возникает из-за попытки отфильтровать их впоследствииявляется то, что, если тайник является последним коммитом в этой ветви (потому что, хотя это не head ветви, это все еще самый последний его потомок), он может фактически отфильтровать всю ветку из журнала, который не являетсяне то, что вы хотите.

4 голосов
/ 11 мая 2017

Мой псевдоним:

[alias]
    l = log --oneline --decorate --graph --exclude=refs/stash

В этом случае вы сможете использовать эти формы, не показывая тайник:

  • git l для текущей ветки
  • git l feature234 для конкретной ветки
  • git l --all за всю историю

Из руководства:

- исключить = <шаблон глобуса>

Не включайте ссылки, совпадающие с тем, что в противном случае следующие --all, --branches, --tags, --remotes или --glob могли бы рассмотреть.

3 голосов
/ 29 сентября 2012

Обратите внимание, что ответ Эндрю не сработает для сокрытия StGit 1.) ветви <branch>.stgit (из StGit версии 0.15), которые в противном случае засоряют вывод делая его непригодным для использования.

В настоящее время я использую следующее решение:

$ git log --graph --oneline --decorate \
  $(git for-each-ref --format="%(refname)" refs/heads/ refs/remotes/ |
    grep -v "\.stgit$")

1.) StGit (" St acked Git ") предоставляет функциональность, аналогичную Quilt / mq, для Git (т.е. нажатие / выталкивание) патчи в / из стека).

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