답변:
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매뉴얼 페이지를 참조하십시오.
git log및 git show출력 매우 다른 일을 하나의 부모있을 때. git log일관성을 원하는 경우 선호 하십시오.
git (v2.17.1). 출력 Merge파일 이 보이지 않습니다 git log -1.