특정 커밋 이후 커밋을 나열하는 방법은 무엇입니까?


144

어쨌든 주어진 커밋 번호에서 HEAD로 커밋 목록을 얻을 수 있습니까?

커밋 날짜까지 이것이 가능하다는 것을 알고 있지만 커밋 번호로 필요하며 문서를 찾을 수 없거나 가능할 수도 있습니다.


주어진 커밋 이름의 커밋을 나열하기 위해 어떤 Git 명령을 사용 했습니까?
Greg Hewgill

커밋 해시를 의미합니까? 커밋 번호가 의미하는 바라면 HEAD~10"HEAD 전에 커밋 10 개"를 의미 할 수도 있습니다 git log HEAD~10...
Cascabel

답변:


174
git rev-list <since_hash>..HEAD

또는 커밋을 포함하려면 다음을 수행하십시오.

git rev-list <since_hash>^..HEAD

git log대신에 git rev-list추가 세부 정보를 얻을 수도 있습니다 .


이것은 나를 위해 완벽하게 작동했습니다. 감사합니다! 나는 이것을 시도했다고 맹세합니다. 실수를했을 것입니다.
ehftwelve

@manojlds 나는 알고 HEAD(가) 커밋을 지속 가리키고 있지만,의 의미 무엇인가^
Kasun Siyambalapitiya는

2
@KasunSiyambalapitiya ^는 첫 번째 부모의 별칭입니다. kernel.org/pub/software/scm/git/docs/git-rev-parse.html의 "개정 사양"을 참조하십시오-또한 git-scm.com/book/en/v2/Git-Tools-Revision 설명서를 참조하십시오 -선택 -또는 stackoverflow.com/questions/2221658/…
Michaelangel007

2
나는 거대한 SHA 목록을 얻었습니다. 그것은 무엇을 말하고 있으며 어떻게 유용합니까?
ErikE

커밋 횟수 만 신경 쓰면 --count뒤에 옵션을 지정할 수 있습니다 rev-list. git rev-list --count <since_hash>..HEAD
Jon Schneider

75
git log <hash>..

입력량이 가장 적습니다. "HEAD"를 생략하면 이것이 당신이 의도 한 것입니다. Rev-list도 작동합니다.


2
이것은 내가 가장 좋아하는 것입니다. 와 결합하고 싶습니다 --oneline. 대신 <hash>, 물론, 당신도, 지점 이름과 같은 심판을 사용할 수 있습니다.
codener

2
또한 최근 커밋의 수는 git log HEAD~#..어디에 있습니까 #?
user3.1415927

최선의 간결한 옵션을 정의하십시오!
Ricardo Rodrigues

37

쉘에서 다음 git 명령을 실행할 수 있습니다.

git log --pretty=oneline commit-id...HEAD

12

"커밋 번호"로 가정하면 커밋 해시를 의미합니다.

git log <commit-hash>..HEAD

1

여기 누군가가 git log특정 커밋에서 시작하여 뒤로 페이지 매김하는 출력을 통해 LESS하는 방법을 찾으려고하면 간단합니다 git log <hash>.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.