본문 바로가기
개발 도구/Git

아직까지 했던 모든 커밋 히스토리 확인하기(git log)

by ♥︎해이나♥︎ 2022. 10. 14.
반응형

우리는 프로젝트를 진행하며, 아직까지 했던 모든 커밋 목록을 확인하고 싶을 수도 있다. 커밋 히스토리(Commit History)라고 하는데 이번 포스팅에서는 이를 확인하는 방법에 대해서 정리해보려고 한다.

 

 

커밋 히스토리 확인하는 방법

커밋 히스토리를 확인하는 명령어는 log 이다. 아래와 같이 터미널을 실행하고 해당 디렉토리로 이동해서 git log 명령어를 실행하면 아직까지 했던 커밋의 목록을 순서대로 볼 수 있다.

 

git log

 

이러한 커밋 히스토리를 볼 때 주의해야 할 점은, 가장 처음에 한 커밋이 가장 아래에 위치해 있다는 것이다. 리스트가 거꾸로 표시되기 때문에 위에 있을수록 최근에 한 커밋이다. 히스토리에서 확인할 수 있는 내용은 아래와 같다.

 

  • 커밋 아이디(= 커밋 해시 / commit 뒤로 이어지는 긴 문자열 코드)
  • 커밋을 한 사람
  • 커밋 날짜와 시간
  • 커밋 메세지

 

커밋 히스토리를 종료하고 싶을 때에는 'q'를 누르면 된다. 그렇다면 커밋 히스토리를 조금 다르게 보고 싶다면 어떻게 해야 할까? 아래와 같은 옵션과 함께 명령어를 사용하면 커밋을 한줄로 요약한 정보를 확인할 수 있다.

 

커밋 히스토리 한 줄로 요약해서 보는 방법

커밋 히스토리를 한 줄로 요약해서 보려면 git log 명령어는 동일하게 사용하되 뒤에 옵션을 추가로 입력해 주어야 한다.

 

git log --pretty=oneline

 

위와 같이 명령어를 사용하면 커밋 아이디와 커밋 메세지만을 확인할 수 있다.

 

커밋 히스토리를 확인하는 다양한 옵션

위에서 커밋 히스토리를 한 줄로 요약해서 보는 방법에 대해서 설명했는데, 여기에 추가 옵션을 사용해서 좀 더 다양하게 볼 수 있는 방법이 있다.

 

git log --pretty=oneline --all


명령어 뒤에 --all 이라는 옵션을 추가로 붙이면, 프로젝트의 모든 브랜치가 커밋한 히스토리를 확인할 수 있다. 그러나 커밋 히스토리가 브랜치별로 분류되어 있는 것이 아니라, 시간 순서대로 나열되어 어떤 브랜치에서 커밋한 것인지 이해하기 힘들다는 단점이 있다. 이를 보완하기 위한 옵션으로 마련된 것이 --graph 이다.

 

git log --pretty=oneline  --graph


이 명령어를 사용하면 커밋 히스토리를 그래프 형식으로 출력한다. 앞에 있는 * 표시가 각각의 커밋을 나타내며, 어떤 브랜치에서 커밋한 것인지 알아보기 쉽다는 장점이 있다.

 

구체적인 커밋 정보 찾아보기

그럼 이번에는 좀 더 구체적인 커밋 정보를 찾아보도록 하자. 그럴 때 사용하는 명령어는 git show이다. 

 

git show 커밋 아이디 앞의 4자리

 

예를 들어, 내가 진행한 커밋 기록 중에서 f80345c9f0c... 의 커밋 해시를 가진 것이 있다. 커밋 메세지는 Update README.md 라고 적혀 있는데 어떤 내용이 변경되었는지 더욱 구체적인 내용을 알고 싶어서 git show f803 이라는 명령어를 입력하고 실행해보았다.

 

 

그렇게 하면 해당 커밋의 구체적인 내용을 확인할 수 있다. 위의 사진에서 중간 부분에 보면 '---'와 '+++'이 있다.

 

  • '---' 이전 내용은 해당 커밋 이전의 모습을 나타냄
  • '+++' 이후 내용은 해당 커밋 이후의 모습을 나타냄

 

좀 더 자세히 설명하자면... 붉은색 텍스트 앞에는 '-' 기호가 붙어 있다. 그리고 초록색 텍스트 앞에는 '+' 기호가 붙어 있다. 이것은

 

### 수학 계산을 위한 코드를 제공하는 프로젝트

 

라고 적혀있던 이전 커밋 내용이

 

### 수학 계산을 위한 코드를 제공하는 프로젝트

1. calculator.py : 계산기에 있는 기능들을 제공하는 모듈

 

으로 변경되었다는 의미이다. 즉, 1. calculator.py...로 시작하는 마지막 한 줄을 추가한 것이다.

반응형

댓글