본문 바로가기
Program Development Tips/Git

[Git] 커밋 히스토리를 보는 다양한 방법: Git에서 이력을 효율적으로 탐색하는 방법

by Maccrey Coding 2024. 9. 3.
반응형

 

Git은 버전 관리 시스템으로, 소스 코드의 변경 이력을 기록하고 관리하는 데 유용합니다.

커밋 히스토리는 코드 변경의 연대기적 기록을 제공하며, 개발 과정에서 문제를 추적하고 이해하는 데 필수적인 요소입니다.

이 글에서는 Git에서 커밋 히스토리를 보는 다양한 방법을 소개하고, 각 방법의 사용 사례와 장점을 설명하겠습니다.

1. git log: 기본 커밋 히스토리 보기

기본 사용법

git log는 가장 일반적으로 사용하는 커밋 히스토리 명령어입니다. 기본적으로 최신 커밋부터 과거 커밋까지 순차적으로 보여줍니다.

git log

주요 옵션

  • --oneline: 각 커밋을 한 줄로 요약해서 보여줍니다.
git log --oneline
  • --graph: 커밋의 브랜치와 병합 이력을 시각적으로 나타냅니다.
git log --graph
  • --decorate: 브랜치와 태그 정보를 커밋 로그에 추가합니다.
git log --decorate
  • --pretty=format:"%h - %an, %ar : %s": 로그 출력 형식을 사용자 정의합니다.
git log --pretty=format:"%h - %an, %ar : %s"

예시

git log --oneline --graph --decorate

이 명령어는 커밋 메시지를 간결하게 보여주고, 브랜치와 태그 정보를 함께 시각적으로 나타냅니다.

2. gitk: GUI를 통한 커밋 히스토리 보기

gitk는 Git의 그래픽 사용자 인터페이스(GUI) 도구로, 커밋 히스토리를 시각적으로 탐색할 수 있습니다. 커밋, 브랜치, 태그 및 변경 사항을 시각적으로 한눈에 볼 수 있어 편리합니다.

실행 방법

gitk

이 명령어를 실행하면 Gitk GUI가 열리며, 커밋 히스토리를 시각적으로 탐색할 수 있습니다.

3. git log와 grep 조합: 특정 커밋 검색

특정 커밋 메시지나 작성자를 검색하려면 git log와 grep을 조합할 수 있습니다.

사용법

  • 커밋 메시지 검색
git log --grep="검색할 메시지"
  • 작성자 검색
git log --author="작성자 이름"

예시

git log --grep="fix bug"

이 명령어는 커밋 메시지에 "fix bug"가 포함된 커밋만을 보여줍니다.

4. git log의 날짜 및 범위 옵션

특정 날짜 범위 또는 기간에 따른 커밋을 필터링하려면 --since와 --until 옵션을 사용할 수 있습니다.

사용법

  • 날짜 범위 필터링
git log --since="2024-01-01" --until="2024-09-01"
  • 최근 X일의 커밋 보기
git log --since="2 weeks ago"

예시

git log --since="2024-08-01" --until="2024-09-01"

이 명령어는 2024년 8월 1일부터 9월 1일 사이의 커밋만을 표시합니다.

5. git log의 출력 형식 사용자 정의

출력 형식을 사용자 정의하여 필요한 정보만 선택적으로 표시할 수 있습니다.

사용자 정의 형식 예시

  • 커밋 해시와 메시지만 보기
git log --pretty=format:"%h - %s"
  • 날짜와 커밋 메시지 보기
git log --pretty=format:"%ad - %s" --date=short

예시

git log --pretty=format:"%h - %an, %ar : %s" --date=short

이 명령어는 커밋 해시, 작성자, 상대적 시간, 메시지를 짧은 날짜 형식으로 보여줍니다.

6. tig: 터미널 기반 Git UI 도구

tig는 터미널 기반의 Git UI 도구로, 커밋 히스토리를 탐색하고 필터링할 수 있습니다. Git을 보다 직관적으로 사용할 수 있도록 도와줍니다.

설치 및 사용법

  • 설치: 대부분의 패키지 관리 시스템에서 설치할 수 있습니다.
sudo apt-get install tig
  • 실행
tig

tig는 Git 커밋을 시각적으로 탐색하고, 브랜치와 태그를 관리하는 데 유용합니다.

7. git log와 diff 조합: 변경 내용 비교

커밋 로그와 함께 변경된 파일의 내용을 비교하여 어떤 변경이 있었는지 확인할 수 있습니다.

사용법

  • 커밋 간의 차이 보기
git log -p
  • 특정 커밋과 현재 상태 비교
git diff <커밋 ID>

예시

git log -p

이 명령어는 각 커밋의 변경된 내용을 함께 보여줍니다.

 

Git에서 커밋 히스토리를 보는 다양한 방법을 통해, 개발자는 코드의 변경 이력을 보다 효율적으로 탐색하고 이해할 수 있습니다.

git log를 활용한 기본적인 커밋 히스토리 조회부터 gitk와 tig와 같은 시각적 도구, grep을 사용한 검색, 그리고 출력 형식의 사용자 정의까지 다양한 방법을 익히면 Git을 더욱 효과적으로 사용할 수 있습니다.

구독!! 공감과 댓글은 저에게 큰 힘이 됩니다.

Starting Google Play App Distribution! "Tester Share" for Recruiting 20 Testers for a Closed Test.

 

Tester Share [테스터쉐어] - Google Play 앱

Tester Share로 Google Play 앱 등록을 단순화하세요.

play.google.com

 

 

반응형