Простой git log <hash>вызов для фиксации слияния показывает сокращенные хэши своих родителей:
$ git log -1 395f65d
commit 395f65d438b13fb1fded88a330dc06c3b0951046
Merge: 9901923 d28790d
...
git выводит родителей в соответствии с их количеством: первый (крайний слева) хеш - для первого родителя и так далее.
Если вам нужны только хеши, есть два эквивалентных варианта:
$ git log --pretty=%P -n 1 <commit>
$ git show -s --pretty=%P <commit>
git rev-list также может отображать хэши родителей, хотя сначала будет перечислен хеш для фиксации:
$ git rev-list --parents -n 1 <commit>
Если вы хотите исследовать родителей, вы можете обратиться к ним напрямую с каратами как <commit>^1и <commit>^2, например:
git show <commit>^1
Это обобщает; для слияния осьминога вы можете ссылаться на n- го родителя как <commit>^n. Вы можете обращаться ко всем родителям с помощью <commit>^@, хотя это не работает, когда требуется одна фиксация. Дополнительные суффиксы могут появляться после n- го родительского синтаксиса (например <commit>^2^, <commit>^2^@), тогда как они не могут появляться после ^@( <commit>^@^недопустимо). Подробнее об этом синтаксисе читайте на rev-parseстранице руководства .