관리 메뉴

CS

Git: 기본 사용법 2. 커밋 기록 확인하기(log) 본문

Git

Git: 기본 사용법 2. 커밋 기록 확인하기(log)

vcxz 2023. 11. 14. 22:44

 

 

커밋 기록 확인하기
git log

명령을 실행하면 해당 저장소의 커밋 기록을 가장 최근의 것부터 출력합니다.

기본적으로 커밋 체크섬, 저자 정보(이름과 이메일), 작성 날짜, 커밋 메시지를 보여줍니다.

옵션

-p 또는 --patch: 각 커밋마다 바뀐 점(diff)도 출력합니다. 어떤 작업을 하였는지 한 눈에 볼 수 있습니다.

 -<숫자>: 해당 개수만큼만 기록을 보여줍니다. 2를 입력하면 최신 것과 그 다음 커밋만 출력합니다.

 --stat: 각 커밋마다 통계(요약) 정보도 출력합니다. 수정한 파일 이름과 각 파일별 수정한 줄 수, 커밋별 전체 수정 파일 개수와 수정 줄 수를 보여줍니다.

--pretty=<옵션>: 출력 형식을 정합니다.

  • oneline: 한 줄로 표현합니다. 체크섬과 커밋 메시지만 포함합니다.
  • short: 체크섬, 저자 정보, 커밋 메시지만 표시합니다(작성 날짜X).
  • full: 기본에서 커미터(커밋한 유저) 정보를 추가하여 표시합니다.
  • fuller: 기본에서 커미터와 커밋 날짜(기본으로 표시되는 날짜는 저자가 작성하였던 날짜로, 커밋 날짜와 다를 수 있음)를 추가하여 표시합니다.
  • format: format:"<포맷>"으로 입력하면, 해당하는 형식으로 결과를 출력합니다. 일부 옵션을 여기서 볼 수 있습니다. 이를 사용하면 항상 특정 형식으로 기록을 출력할 수 있으므로 다른 프로그램에 가져가 사용할 수 있습니다.

 --oneline: --pretty=oneline--abbrev-commit을 함께 사용한 것과 동일합니다. --abbrev-commit은 체크섬을 앞 7자까지만 표시하는 옵션입니다.

 --graph: 브랜치와 머지 기록용인 아스키 그래프를 함께 출력합니다. 이를 사용하면 브랜치가 어떻게 갈라졌고 합쳐졌는지 쉽게 확인할 수 있습니다.

--no-merges: 머지 커밋을 출력하지 않습니다.

검색용 옵션

--after=<날짜 또는 기간>: 특정 날짜 이후로 커밋된 커밋이나, 지금으로부터 특정 기간 내에 커밋된 커밋만 출력합니다. '2023-01-01' 같이 날짜를 입력할 수도 있고, '2.weeks'처럼 상대적인 기간을 입력할 수도 있습니다. 다양한 방식으로 사용할 수 있습니다.

--grep=<키워드>: 커밋 메시지에 특정 키워드가 있는 커밋만 출력합니다.

 --author=<저자 이름>: 특정 저자가 작성한 커밋만 출력합니다.

-S <키워드>: 수정한 내용에 특정 키워드가 있는 커밋만 출력합니다. 예를 들어, 특정 함수에 대한 커밋을 찾을 때 함수 이름을 입력할 수 있습니다.

명령어 마지막에 <파일 이름>이나 <경로>를 입력하면 해당 파일 또는 경로에 대한 커밋만 출력합니다.

# my_file에 대한 커밋 기록만 출력
git log --oneline my_file

--all-match: 여러 검색 옵션을 함께 사용하는 경우, 이 옵션을 사용하면 모든 조건을 만족하는 커밋만 출력합니다. 사용하지 않으면 한 조건에만 해당해도 출력합니다.

 

 


위 내용은 Git Book을 기반으로 작성하였습니다.

 

Git Book - 2. Git의 기초

 

Git - 커밋 히스토리 조회하기

머지 커밋 표시하지 않기 저장소를 사용하는 워크플로우에 따라 머지 커밋이 차지하는 비중이 클 수도 있다. --no-merges 옵션을 사용하면 검색 결과에서 머지 커밋을 표시하지 않도록 할 수 있다.

git-scm.com