make git log --graph --all показывает текущее местоположение, как это делает hg glog - PullRequest
13 голосов
/ 15 ноября 2011

Как мне сделать так, чтобы git показывал мой текущий узел на графике журнала?git log --graph --all помечает все узлы одинаково с *, но я привык к Mercurial, где hg glog визуально отличает мой текущий узел, отображая его с помощью @.Это особенно полезно после git fetch (он же hg pull), когда мой текущий узел не обязательно будет наверху.

В настоящее время я должен выяснить хэш моего текущего узла, а затем отыскивать вывод графического журнала.Есть ли способ лучше?

PS - я нахожусь в неграфической среде, поэтому gitk не вариант.

[ОБНОВЛЕНИЕ: теперь я полностью привык к git, и первое, что я делаю, настраиваюВ новой среде для установки псевдонима git введите следующую команду:

git config --global alias.map 'log --graph --full-history --all --color --decorate'

Это позволит мне набрать git map в любом репо и увидеть карту всех ветвей и коммитов ascii-art, а такжерасположение на этой карте.Этот псевдоним, вероятно, является моей единственной наиболее используемой командой git на данный момент (кроме add и commit), действительно необходимой для меня]

Ответы [ 2 ]

11 голосов
/ 15 ноября 2011

Добавление опции --decorate покажет ссылки, указывающие на каждый коммит.Так, например, вы увидите HEAD и origin / HEAD (или что-то еще) в нужных местах.

Они могут даже быть в красивых цветах, если вывключите это.

PS.спасибо, что заставили меня проверить это - на самом деле это очень приятно, особенно потому, что он также показывает мои различные тайники.

2 голосов
/ 15 ноября 2011

Может быть, добавив некоторую опцию форматирования, вы можете увидеть, где находится HEAD:

--pretty=format:"%h%x09%d%x20%s"

См. " Визуализация топологии ветвей в git " для иллюстрации.

...