git에 처음 10을 기록하십시오. 방법. (지점 없음) 커밋 인덱스를

두 가지 질문 :

  1. 처음부터 끝까지 git에서 처음 10 개의 커밋을 표시하는 방법. (지점 없음)
  2. 커밋 인덱스를 지정하고 기록하는 방법. (두 번째 또는 세 번째 표시)

나는 자식이 부모를 사용하여 커밋을 연결한다는 것을 알고 있습니다. 커밋을 처음부터 끝까지 기록하는 것이 쉽습니다. 처럼:git log HEAD~10

하지만 처음부터 끝까지 쿼리해야합니다. 가능합니까?



답변

한 줄 형식으로 모든 것을 기록하고 출력을 끝냅니다.

git log  --pretty=oneline | tail -n 10

답변

git log -10

개정 사양과 일치하는 최신 커밋 10 개를 표시합니다 (스펙 누락은 “모든 커밋”을 의미 함).

맨 페이지 참조 :

git help log

부분 Commit Limiting

-<number>, -n <number>, --max-count=<number>
    Limit the number of commits to output.

답변

여기 내 접근 방식,

처음 10 개의 커밋을 얻으려면 :

git log -n 10

-n은 숫자입니다.

추가
다음 10 개 커밋을 얻으려면 먼저 10 개를 건너 뜁니다.

git log --skip=10 -n 10

답변

마지막 10 개의 커밋을 가져 오려면 :

git log HEAD~10..HEAD

가장 오래된 순서에서 최신 순서로 가져 오려면 :

git log --reverse HEAD~10..HEAD

병합이있는 경우 10 개 이상의 커밋이 표시 될 수 있습니다. --first-parent각 분기의 첫 번째 상위를 통과하려는 경우에만 추가 하십시오.

자세한 내용은 git rev-list.


편집 : 이미 “기록 시작 부분에 커밋 표시”에 대한 유용한 답변을 얻었습니다 (다시 한 번 repo의 여러 연결되지 않은 커밋 DAG에 대한주의 사항 참조). 그러나 다음과 같이 할 수도 있습니다.

git log --no-walk `git rev-list HEAD | tail -n 10`

과:

git log --no-walk `git rev-list --reverse HEAD | head -n 10`

결과를 원하는 순서에 따라.


답변

최상의 결과는 두 가지 최상의 답변의 조합으로 제공됩니다.

git log --pretty=oneline -10

답변

모든 것을 역으로 기록하기 만하면 -1은 하나의 로그를 나열 함을 의미합니다.

git log  --reverse -1

답변

나는 아래의 간단한 구문 명령을 사용합니다.

git log -10 --oneline