programing

git log 하나의 커밋 ID 만 표시

yoursource 2021. 1. 15. 19:49
반응형

git log 하나의 커밋 ID 만 표시


나는 도움이 필요해. 하나의 커밋 ID 만 표시 할 수 있습니까? git log -3은 1-3의 로그를 보여주기 때문에 3 개만 보여주고 싶습니다. 어떤 가능한 명령이 일치할까요?

나는 명령을 사용한다

       git log -3 --pretty=format:"%h"

결과는

       ffbef87
       cf0e073
       1c76c5d

1c76c5d표시하고 싶습니다 .


현재 커밋에서 git show 세 번째 부모참조하는 것을 사용할 수 있습니다 (예 :의 두 번째 조상 HEAD). 또한 git show다음과 같은 형식 문자열을 허용합니다 git log.

git show HEAD~2 --pretty=format:"%h" --no-patch

업데이트 ( 2016-12-01 )

더 나은 방법은 축약 된 (7 자) 커밋 ID를 출력하는 옵션 과 함께 plumbing 명령 을 사용하는 것입니다 .rev-parse --short

git rev-parse --short HEAD~2

또는 커밋 ID의 정확한 길이를 지정할 수도 있습니다.

git rev-parse --short=4 HEAD~2

이를위한 도구가 있습니다.

git log -3 --pretty=format:"%h" | tail -n 1

n다음 플래그를 사용하여 해시 문자 (기본값 대신)를 포함 할 수 있습니다 .

--abbrev=n 

유닉스 철학의 관련 부분

1) 각 프로그램이 한 가지 일을 잘하도록합니다. 새로운 작업을 수행하려면 새로운 "기능"을 추가하여 기존 프로그램을 복잡하게 만들지 말고 새로 빌드하십시오.

2) 모든 프로그램의 출력이 아직 알려지지 않은 다른 프로그램의 입력이 될 것으로 예상하십시오. 불필요한 정보로 출력물을 어지럽히 지 마십시오. 엄격하게 컬럼 또는 이진 입력 형식을 사용하지 마십시오. 대화 형 입력을 고집하지 마십시오.

... [즉]

  • 한 가지 일을 잘하는 프로그램을 작성하십시오.
  • 함께 작동하는 프로그램을 작성하십시오.

https://en.wikipedia.org/wiki/Unix_philosophy


git 버전 2.3.8 이상이므로 다음 --skip옵션을 사용할 수 있습니다 .

   git log -1 --skip 2 --pretty=format:"%h"

이전 버전의 git이 --skip.

참조 URL : https://stackoverflow.com/questions/31448445/git-log-show-one-commit-id-only

반응형