❇️ 요약
- Git Log
- Log 개수 제한 / 생략 개수 지정
- 변경사항 출력
- 한줄로 출력
- 사용자 정보로 검색 / 파일 변경사항으로 검색 / Commit Message로 검색
📖 Git Log 문법
🔆 Git Log : 저장소의 Commit 이력을 시간순으로 보여준다
- 기록을 보고 싶은 Repository에 가서
git log 입력
git log
# 종료
:q
commit 9b2dfa475678b412af25d93fddb8729016e3e711 # 해시코드로 이루어진 Commit ID
Author: user_name <user_eamil> # Commit 한 User 정보
Date: Sat Jun 15 20:44:07 2024 +0900 # 언제 Commit을 했는지
rename test.txt to src/test.txt # Commit Message 내용

🔆 Git Log - 최근 Commit 개수 지정
git log -<개수>
git log -2

🔆 Git Log - 생략할 Commit 개수 지정
git log --skip <스킵할 개수>
git log --skip 5

🔆 Git Log - Commit 마다 변경내용 출력
- Log에서 무슨 내용이 달라졌는지 확인
- Diff 포함 출력
git log -p
# 종료
:p

🔆 Git Log - 한줄로 출력
git log --oneline
git log --oneline -<개수>

🔆 Git Log - 사용자 정보로 검색
git log --author=<user_name OR user_email>
git log --author=<user_name OR user_email> -<개수>

🔆 Git Log - 파일 변경내용으로 검색
git log -S <검색어>
- 변경사항 내용에
This를 포함한 Commit 검색

🔆 Git Log - Commit Message로 검색
git log --grep <검색어>

📖 Git Log 다양한 상황에서 테스트
☁️ Git Repository 생성
mkdir log_project
cd log_project
git init
git status

☁️ 빈 파일 생성해서 Add
touch test.txt
git add test.txt
git status

☁️ Commit
git commit -m "initialize"
git status

☁️ 파일 수정하고 다시 Commit
cat > test.txt
one
git status
# 파일 명시 : -a를 하지 않아도 명시한 파일 한에서는 Staged 생략 가능
git commit -m "first commit" test.txt
git status

☁️ 2번째 수정
cat >> test.txt
two
git commit -m "second commit" test.txt
git status

☁️ 3번째 수정
cat >> test.txt
three
git commit -m "third commit" test.txt
git status

☁️ Log 확인
git log

☁️ Log - 한줄로 보기
git log --oneline

☁️ Log - 최근 2개만 보기
git log -2

☁️ Log - 최근 2개를 한줄로 보기
git log -2 --oneline

☁️ Log - 최근 하나만 변경사항까지 보기
git log -p -1 --oneline

☁️ Log - 파일 변경 사항 검색
git log -S two --oneline -p

☁️ Log - Commit Message로 검색
git log --grep first -p

☁️ Log - 특정 사용자의 Commit 검색
git log --grep first --author=<user_name>
