Как проверить структуру вложенности локального репозитория git

Я работаю над большим продуктом как разработчик, у меня много локальных веток, я хотел визуализировать рабочий процесс вложения веток git, т.е.

master---------
     \
      \
      branch a--------
              \
               \
                branch child----

Как я могу получить что-то подобное Я много искал, но нашел обходные пути, которые в моем случае бесполезны, например, проверка полного журнала и т. д. Есть ли другой способ решения этой проблемы.

Также ранее другой разработчик, который покинул компанию, работал над тем же компьютером и репозиторием, поэтому существует более 50 филиалов, поэтому мне очень важно понимать рабочий процесс, который у него был на локальном компьютере.


1
431
4

Ответы:

Из журнала git документация:

git log --branches --not --remotes=origin

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

git log master --not --remotes=*/master

Показывает все коммиты, которые находятся в локальном главном хранилище, но не в каких-либо главных ветках удаленного репозитория.

Проверьте, помогает ли это

Редактировать 1

git log --graph --branches --not --remotes=origin


Решено

Самый близкий способ просмотреть ветви в древовидной структуре - использовать команду git log.

git log --graph --simplify-by-decoration --pretty=format:'%d' --all

См. этот ответ для получения дополнительной информации об этом.


Вы можете попробовать использовать gitg или любой аналогичный инструмент визуального представления. Они предоставят вам более простой способ просмотра структуры вложенности, а также вы можете искать коммиты, такие как то, что вы получаете в git branch --contains (без необходимости покупать кучу кофейных зерен;))


Это то, что я использую, когда меня больше интересует форма моей ветвящейся структуры, чем сами конкретные коммиты. Не красивый рендер, но лаконичный.

git log --decorate --all --graph --simplify-by-decoration --topo-order --date=short --format='%h [%cd]%d %s'

Я храню это как псевдоним shape.