본문 바로가기
개발/Git, Github

[git] git log 명령어

by 77monkey 개발자 2024. 7. 7.
반응형

 

 

 

 

 

git commit 명령어를 배우고 나면 commit이 생성됩니다. git log 명령어를 통해서 commit을 보는 방법에 대해서 알아보도록 하겠습니다

 

git log 명령어

git log 명령어를 통해서 commit 이력을 조회할 수 있습니다. 예시를 통해서 알아보도록 합시다.

예시

test.txt 파일을 만들어서, 1을 쓰고 commit을 만듭니다. 그다음에 2를 쓰고 commit을 만듭니다. 그다음에 3을 쓰고 commit을 만듭니다. 만드는 방법은 여태까지 포스팅을 잘 따라오셨다면 문제없으실 것으로 생각됩니다. 혹시 몰라서 참고용 명령어를 남겨두도록 하겠습니다. git add 명령어와 git commit 명령어를 각각 사용하지 않고, git commit 명령어에서 am 옵션을 통해서 한 번에 commit을 생성할 수 있습니다. 다만, git에 의해서 추적되고 있는 파일들만 대상으로 하니 해당 부분 참고하시길 바랍니다.

$ echo 1 > test.txt
$ git add test.txt
$ git commit -m "write 1 on test.txt"
$ echo 2 > test.txt
$ git add test.txt
$ git commit -m "write 2 on test.txt"
$ echo 3 > test.txt
$ git commit -am "write 3 on test.txt"

 

잘 작성하셨다면 아래 명령어를 입력하면 아래 그림과 같이 나오는 것을 알 수 있습니다.

$ git log

git log 명령어
git log 명령어

 

commit 정보

git log 명령어를 입력하면, 현재 브랜치의 모든 커밋 이력을 최신 순으로 출력해 줍니다. 출력되는 정보는 다음과 같습니다.

  • 커밋 해시(commit hash): 
  • 작성자(author)
  • 작성 일자(date)
  • 커밋 메시지(commit message)

git log 옵션

소개해 드릴 git log 옵션은 하나만 쓸 수 있지만, 다른 옵션들과 같이 쓸 수 있습니다. 하지만 각 옵션에 대해서 알려드리기 위해서 각각에 대해서 알려드리도록 하겠습니다.

git log --oneline 

각 commit을 한 줄로 요약하여 보여줍니다. 커밋 해시와 커밋 메시지의 첫 번째 줄이 출력됩니다. 

$ git log --oneline

 

git log --oneline
git log --oneline

git log --graph

commit 히스토리를 그래프 형태로 시각화하여, 브랜치와 병합 상태를 한눈에 볼 수 있습니다. 

하지만 아직 브랜치 등의 개념을 배우지 않았고, master 브랜치에서 작업을 진행하여 graph가 simple하게 나옵니다.

$ git log --graph

 

git log --graph
git log --graph

 

git log --decorate

commit log에 브랜치와 태그 이름을 표시합니다.

해당 부분은 이미 적용되어서 보이기 때문에 따로 예시를 들지 않도록 하겠습니다. 본인의 사용환경에 따라서 해당 부분이 default로 적용되는 경우도 있고, 그렇지 않은 경우도 있습니다. 그렇기 때문에 필요에 따라서 사용하시면 좋을 것 같습니다.

 

git log -p

각 commit의 변경 내용을 패치 형식으로 표시합니다. 각 commit의 변경점을 확인할 때 유용합니다.

아래 그림의 경우 3개의 commit에 대해서 변경점을 다 보여주는데, 제가 캡처를 1개만 했습니다. 직접 실습해 보시면 다 나오는 것을 확인할 수 있습니다.

git log -p
git log -p

git log <filename>

특정 파일의 변경 이력을 조회합니다. 예시를 통해서 test.txt 파일을 바꿨기 때문에 아래와 같이 확인을 하면 3개의 commit이 나오는 것을 알 수 있습니다. 

$ git log test.txt

git log test.txt
git log test.txt

마무리

git log에 대해서 알아보았는데, 도움이 되셨나요? 제가 주로 쓰는 git log 옵션들은 다 소개해 드린 것 같습니다. 혹시나 추가로 더 알아보고 싶으신 분들은 검색해 보시길 바랍니다. 다음 시간에는  alias를 통해서 좀 더 git log를 예쁘게 출력하는 방법에 대해서 알아보도록 하겠습니다.

반응형

'개발 > Git, Github' 카테고리의 다른 글

[git] git diff 명령어  (0) 2024.07.20
[git] git commit 명령어  (0) 2024.06.30
[git] git add 명령어  (0) 2024.06.27
[git] git init 명령어  (0) 2024.06.26
[git] git 설치를 끝냈다면 git 설정 (feat .gitconfig)  (0) 2024.06.24