저장소에서 초기 커밋을 참조해야하는 스크립트가 있습니다. git은 특별한 참조 HEAD
을 가지고 있지만 대응하는 TAIL
을 갖고 있지 않습니다. git help rev-parse
에서 나에게 도움이되는 것을 찾을 수 없습니다.초기 커밋을 참조하는 방법은 무엇입니까?
여기에 내가하고 싶은 내용은 다음과 같습니다 꽤 해키와 자식 로그의 출력이 변화에 따라 달라집니다
git show `git log --reverse | if read a commit ; then echo $commit ; fi`
:
는git show TAIL
여기에 내가 가진 하나 개의 옵션입니다.
지금은 초기 커밋에 태그를 지정하고이를 내 refspec으로 사용합니다. 그러나, 나는 일반적인 도구를 공개하고 싶습니다. 그래서 좋은 선택은 아닙니다.
파이프가 없으며, 모든 루트가있다 :'git rev-list --max-parents = 0 HEAD' – wowest
@wowest : IIRC IIRC 내가 이 대답을 쓰고 있었다. 업데이트를위한 Thansk! –
나를 위해,'git rev-list HEAD | tail -n 1'과'git rev-list --max-parents = 0 HEAD'는 나와 같은 해시 값을 반환하지 않습니다. '--max-parents = 0'을 사용하는 것은 실제로 초기 커밋을 얻습니다. 후자가 더 신뢰할 만하다고 지적 할 것이라고 생각했습니다. – jbranchaud