Ответ 1
Вы можете попробовать:
git log --graph --all --decorate --simplify-by-decoration
Он будет отображать только фиксации, которые являются ветвями или помечены.
Если у меня есть n git ветки, как легко показать связь между этими ветвями?
В принципе, мне интересно видеть дерево подмножества всех ветвей в моем репозитории. Меня, однако, не интересуют все промежуточные коммиты.
Например: Мой репозиторий выглядит следующим образом:
o---o--o A
/ /
o--o--o--o--o--o B
\ \ \
\ o--o C \
\ \ \
o--o--o--o--o--o D
Но, скорее всего, это сложнее. Теперь я хочу видеть взаимосвязь между ветвями A, C и D. Что-то вроде строк:
o A
/
o--o--o
\ \
o---o C
\
o--o D
Или эквивалентный обзор. Возможно ли это, и как? (Графический инструмент будет в порядке.)
Решение
На основании ответа Антуана Пелисса, нижняя строка, похоже, делает (почти) именно то, что я хочу:
git log --graph --decorate --oneline --simplify-by-decoration A B C
Обновление
Марк Лонгэр указывает в своем ответе ниже, что gitk
принимает те же параметры, что и git rev-list
, поэтому можно сделать:
gitk --simplify-by-decoration A C D
Вы можете попробовать:
git log --graph --all --decorate --simplify-by-decoration
Он будет отображать только фиксации, которые являются ветвями или помечены.
Я бы использовал:
gitk A C D
... Есть, вероятно, другие графические интерфейсы git, которые создают более красивый рендеринг графа фиксации, но я всегда нашел gitk
для этой цели. Все ветки и метки помечены в стиле "Лондонское метро":
Вы также можете использовать опцию --simplify-by-decoration
для gitk
, так как она понимает все параметры, которые выполняет git rev-list
, например:
gitk --simplify-by-decoration A C D