주어진 커밋의 커밋 메시지를 git에 인쇄하십시오.


244

주어진 커밋의 커밋 메시지를 인쇄하려면 배관 명령이 필요합니다.


3
한 줄 커밋 메시지를 인쇄하는 방법을 찾는 사람이 여기에 있지만 처음에 나타나는 해시를 신경 쓰지 않으면 다음과 같이 작동합니다.git show -s --oneline <commit>
waldyrious

서버 머신에서 커밋 메시지를 인쇄 할 줄을 어디에 추가해야합니까? 어떤 후크 파일을 의미 했습니까?

"배관 작업"명령의 의미는 무엇입니까?
Bryan Ash

답변:


332

"배관"은 아니지만 원하는 것을 정확하게 수행합니다.

$ git log --format=%B -n 1 <commit>

"배관"명령이 절대적으로 필요한 경우 (필요한 이유는 확실하지 않음) 다음을 사용할 수 있습니다 rev-list.

$ git rev-list --format=%B --max-count=1 <commit>

하지만 rev-list또한 인쇄 할 커밋 메시지에 추가 (첫 번째 줄에) 샤 커밋.


4
나를 위해 완벽하게 일했지만 (Linux 상자 %s%b대신) 대신 사용 했습니다%B
adamk

17
%B올바른 지정자입니다 (적어도 Git 1.7.2에서는 언제 추가되었는지 확실하지 않습니다).
mipadi

2
%B1.7.1 이후 (아마도 1.7.1.1) 이후에 추가되었습니다.
mipadi

1
실제로 그것은 분명히 Git 1.7.2입니다. 무카 그라시아 스!
Mark Probst

당신은 또한 사용할 수 있습니다 : $ git log --format=%B -n 1 <commit> | cat -그것은 당신에게 커밋 메시지를주고 커밋 샤를 제공하지 않을 것이며, 그것을 "파이프"할 수 있습니다. 실제로 이것을 CI 스크립트의 일부로 사용합니다.
Paulo Muñoz

138

git show보다 배관 명령이 많으며 git log형식 옵션이 동일합니다.

git show -s --format=%B SHA1

9
첫 번째 줄 ( "제목")을 원하면 %s대신을 사용하십시오 %B.
ntc2

13
(1 개의 항목으로 제한되는 목록이 아니라 단일 커밋 작업이므로 허용 된 "log"또는 "rev-list"답변을 선호합니다.)
Rich

17

배관은 아니지만 .gitconfig에 다음이 있습니다.

lsum = log -n 1 --pretty=format:'%s'
lmsg = log -n 1 --pretty=format:'%s%n%n%b'

"마지막 요약"과 "마지막 메시지"입니다. 해당 커밋의 요약 또는 메시지를 얻기 위해 커밋을 제공 할 수 있습니다. (1.7.0.5를 사용하고 있으므로 % B는 없습니다.)


-n 인수를 매개 변수로 전달할 수 있습니다. 따라서 마지막 커밋 만 반환하는 대신 마지막 5 개의 커밋을 반환하도록 만들 수 있습니다. 여기에서 필요한 변경 lsum = "! f () {git log -n $ 1 --pretty = format : '% s';}; f"lmsg = "! f () {git log -n $ 1 --pretty = format : '% s % n % n % b';}; f "여기에서 찾았습니다 stackoverflow.com/questions/7005513/… 이 git lsum 5
kuklei

15

이렇게하면 지정된 시간 동안 모든 메시지의 매우 간단한 목록이 제공됩니다.

git log --since=1/11/2011 --until=28/11/2011 --no-merges --format=%B > CHANGELOG.TXT

4

나는 사용하기 시작했다

git show-branch --no-name <hash>

보다 빠르다

git show -s --format=%s <hash>

둘 다 같은 결과를냅니다


1
이것은 커밋 메시지 전체가 아닌 첫 번째 줄만 보여줍니다 (% s). % B로 show-branch를 수행하는 방법이 있다면 도움이 될 것입니다.
정식 Chris

3

나는 이것을 위해 shortlog를 사용한다 :

$ git shortlog master..
Username (3):
      Write something
      Add something
      Bump to 1.3.8 
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.