프로젝트 기록 탐색: Git Log, Diff 및 Blame 명령어

`git log`를 사용하여 커밋 기록을 확인하고, `git diff`로 변경 사항을 비교하며, `git blame`을 통해 파일의 특정 줄을 마지막으로 수정한 사람이 누구인지 파악하는 방법을 알아봅니다.

Git은 프로젝트의 변경 이력을 추적하는 강력한 도구입니다. 프로젝트가 어떻게 발전해 왔는지 이해하고, 특정 변경 사항을 분석하며, 코드의 책임 소재를 파악하는 데 필수적인 세 가지 명령어를 소개합니다.

1. git log: 커밋 기록 확인하기

git log는 저장소의 커밋 이력을 시간순으로 보여줍니다. 누가, 언제, 어떤 메시지와 함께 변경했는지 확인할 수 있습니다.

git log --oneline --graph --all

이 명령어는 브랜치 구조와 커밋 이력을 한눈에 보기 쉽게 요약하여 출력합니다.

2. git diff: 변경 사항 비교하기

git diff는 작업 디렉토리, 스테이징 영역, 커밋 간의 차이점을 보여줍니다. 코드가 어떻게 수정되었는지 구체적으로 확인하고 싶을 때 사용합니다.

# 마지막 커밋과 현재 작업 디렉토리 비교
git diff

# 특정 커밋 간의 차이 비교
git diff <commit-hash1> <commit-hash2>

3. git blame: 코드 수정자 추적하기

git blame은 파일의 각 줄이 마지막으로 언제, 누구에 의해 수정되었는지 보여줍니다. 특정 코드 라인에 문제가 발생했을 때, 그 변경의 맥락을 파악하는 데 매우 유용합니다.

git blame <filename>

이 명령어는 파일의 각 줄 앞에 커밋 해시와 작성자 정보를 표시합니다.


이 명령어들을 적절히 활용하면 프로젝트의 유지보수 효율을 크게 높일 수 있습니다.