Как мне увидеть путь коммита в истории git или «как он попал в текущую ветку»?

Я смотрю в истории коммитов, используяgitk а такжеgit log и я пытаюсь увидеть, как конкретный коммит поступил в определенную ветку. Я вижу коммиты в истории, поэтому я знаю, что они есть.

Что я хочу понять, так это то, как они слились (они должны были остаться в своей собственной ветке). Это очень большой проект, и существуют сотни коммитов между коммитом и текущим состоянием ветки, поэтому я не могу четко расшифровать ограниченный DAG вgitkи фиксация маскируется в других ветках, объединяется и фиксирует сообщения.

Для этого я пытался:

gitk {sha1hashIDstring}..branch_name
gitk {sha1hashIDstring}..branch_name --ancestry-path
git log {sha1hashIDstring}..branch_name --reverse
git log {sha1hashIDstring}..branch_name --merges --reverse
git log {sha1hashIDstring}..branch_name --ancestry-path --reverse
git log {sha1hashIDstring}..branch_name --ancestry-path --merges --reverse

И я не понимаю результатов. Я ТОЛЬКО хочу видеть элементы, которые включают конкретный коммит, о котором идет речь, так что я ясно вижу, как он попал в ветку. Как мне это сделать?

пример

Что я ищу, вgitk желательно ноgit log будет достаточно:

Message       Author         Date         #commit that merged branch z into current branch
Message       Author         Date         #commit that merged branch y into branch z
Message       Author         Date         #commit that merged branch x into branch y
Message       Author         Date         #commit that merged {sha1hashIDstring} commit/branch a into branch x
Message       Orig_Author    Date         #{sha1hashIDstring} original commit, on branch a
Дополнительная информация

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

Драйвером для этого является то, что я вижу сам коммит, и мне говорят, что он не должен быть в определенной ветке. Вот что я вижу:

Message       Orig_Author    Date         #{sha1hashIDstring} commit
Message       Orig_Author    Date         #Merged into branch test_dec14 (includes original commit)
...
Message       Author         Date         # unrelated commits
Message       Author         Date         # more unrelated commits
# Stuff happened here ??? everything I do gives me hundreds of things here 
# Not all of them related to the {sha1hashIDstring} commit
# No idea how to see only the ones that are
...
Message       Author         Date         # final commit on test_jan15 branch

Мне говорят, что совершает вtest_dec14 не должен был сделать этоtest_jan15 если они не были освобождены, и как таковой коммит {sha1hashIDstring} НЕ ДОЛЖЕН БЫТЬ вtest_jan15И все же это так. Я хочу знать, почему, как он туда попал и кто его туда поместил.

Ответы на вопрос(1)

Ваш ответ на вопрос