소개
🧑💻 Git 또는 LabEx 를 처음 사용하시나요? Git 퀵 스타트 강좌부터 시작하는 것을 권장합니다.
Git 은 개발자가 코드베이스에 적용된 변경 사항을 추적할 수 있도록 해주는 강력한 버전 관리 시스템입니다. Git 의 가장 유용한 기능 중 하나는 특정 날짜 범위 내의 커밋을 볼 수 있는 기능입니다. 이는 버그를 추적하거나 프로젝트의 히스토리를 이해하는 데 도움이 될 수 있습니다.
🧑💻 Git 또는 LabEx 를 처음 사용하시나요? Git 퀵 스타트 강좌부터 시작하는 것을 권장합니다.
Git 은 개발자가 코드베이스에 적용된 변경 사항을 추적할 수 있도록 해주는 강력한 버전 관리 시스템입니다. Git 의 가장 유용한 기능 중 하나는 특정 날짜 범위 내의 커밋을 볼 수 있는 기능입니다. 이는 버그를 추적하거나 프로젝트의 히스토리를 이해하는 데 도움이 될 수 있습니다.
Git 의 날짜 범위 필터링 기능을 탐색하기 위해 먼저 작업할 Git 리포지토리가 필요합니다. LabEx 에서 제공하는 git-playground 리포지토리를 사용하겠습니다.
리포지토리를 복제하는 것부터 시작해 보겠습니다.

git clone https://github.com/labex-labs/git-playground
다음과 유사한 출력을 볼 수 있습니다.
Cloning into 'git-playground'...
remote: Enumerating objects: 8, done.
remote: Counting objects: 100% (8/8), done.
remote: Compressing objects: 100% (5/5), done.
remote: Total 8 (delta 0), reused 8 (delta 0), pack-reused 0
Receiving objects: 100% (8/8), done.
cd git-playground
이제 로컬 머신에 리포지토리가 있으므로 커밋 히스토리를 탐색할 수 있습니다.
이제 리포지토리를 복제했으므로 git log 명령어를 사용하여 커밋 히스토리를 보는 방법을 알아보겠습니다.
git log 명령어는 가장 최근 커밋부터 시작하여 리포지토리의 모든 커밋 목록을 표시합니다. 각 커밋 항목에는 다음이 포함됩니다.
기본 커밋 히스토리를 살펴보겠습니다.
git log
다음과 유사한 출력을 볼 수 있습니다.
commit d22f46ba8c2d4e07d773c5126e9c803933eb5898 (HEAD -> master, origin/master, origin/feature-branch, origin/HEAD)
Author: Hang <huhuhang@users.noreply.github.com>
Date: Wed Apr 26 14:16:25 2023 +0800
Added file2.txt
commit cf80005e40a3c661eb212fcea5fad06f8283f08f
Author: Hang <huhuhang@users.noreply.github.com>
Date: Wed Apr 26 14:16:25 2023 +0800
Added file1.txt
commit b00b9374a7c549d1af111aa777fdcc868d8a2a01
Author: Hang <huhuhang@gmail.com>
Date: Wed Apr 26 14:16:00 2023 +0800
Initial commit
출력이 길 경우 다음을 사용하여 탐색할 수 있습니다.
Space 키를 눌러 앞으로 이동b 키를 눌러 뒤로 이동q 키를 눌러 로그 보기 종료각 커밋에는 고유 식별자 (긴 16 진수 문자열), 작성자 정보, 커밋 날짜 및 시간, 그리고 변경 사항을 설명하는 메시지가 있습니다.
이제 특정 날짜를 기준으로 커밋을 필터링하는 방법을 배우겠습니다. Git 은 이 목적을 위해 두 가지 유용한 옵션을 제공합니다.
--since 또는 --after: 특정 날짜 이후의 커밋을 표시합니다.--until 또는 --before: 특정 날짜 이전의 커밋을 표시합니다.이러한 옵션을 결합하면 특정 날짜 범위 내의 커밋을 볼 수 있습니다.
2023 년 4 월 25 일부터 2023 년 4 월 27 일 사이에 발생한 모든 커밋을 살펴보겠습니다.
git log --since='Apr 25 2023' --until='Apr 27 2023'
이 명령어는 2023 년 4 월 25 일부터 4 월 27 일 사이에 만들어진 모든 커밋을 표시합니다. 출력은 다음과 같아야 합니다.
commit d22f46ba8c2d4e07d773c5126e9c803933eb5898 (HEAD -> master, origin/master, origin/feature-branch, origin/HEAD)
Author: Hang <huhuhang@users.noreply.github.com>
Date: Wed Apr 26 14:16:25 2023 +0800
Added file2.txt
commit cf80005e40a3c661eb212fcea5fad06f8283f08f
Author: Hang <huhuhang@users.noreply.github.com>
Date: Wed Apr 26 14:16:25 2023 +0800
Added file1.txt
commit b00b9374a7c549d1af111aa777fdcc868d8a2a01
Author: Hang <huhuhang@gmail.com>
Date: Wed Apr 26 14:16:00 2023 +0800
Initial commit
Git 은 다음과 같은 다양한 날짜 형식을 허용합니다.
"YYYY-MM-DD" (예: 2023-04-25)"Month DD YYYY" (예: Apr 25 2023)"DD Month YYYY" (예: 25 Apr 2023)다른 날짜 범위 내에 커밋이 있는지 확인하기 위해 다른 날짜 형식을 시도해 보십시오.
git log --since='2023-04-20' --until='2023-04-24'
해당 기간 동안 커밋이 없으면 이 명령어가 결과를 반환하지 않을 수 있으며, 이는 정상입니다.
Git 은 또한 최근 활동을 빠르게 볼 수 있도록 매우 편리한 상대 날짜를 지원합니다.
지난 12 주 동안의 모든 커밋을 살펴보겠습니다.
git log --since='12 weeks ago'
이 명령을 실행하는 시점에 따라 해당 기간 내에 있는 모든 커밋 또는 일부 커밋만 볼 수 있습니다.
기타 유용한 상대 날짜 형식은 다음과 같습니다.
"X days ago""X months ago""yesterday""last week"지난 1 년 동안의 커밋을 살펴보겠습니다.
git log --since='1 year ago'
이 명령어는 지난 1 년 동안 이루어진 모든 커밋을 표시합니다.
Git log 는 출력을 사용자 정의하기 위한 다양한 형식 옵션을 제공합니다. 몇 가지 유용한 옵션은 다음과 같습니다.
git log --oneline --since='Apr 25 2023' --until='Apr 27 2023'
출력은 다음과 같습니다.
d22f46b (HEAD -> master, origin/master, origin/feature-branch, origin/HEAD) Added file2.txt
cf80005 Added file1.txt
b00b937 Initial commit
git log --name-status --since='Apr 25 2023' --until='Apr 27 2023'
이 명령어는 각 커밋에서 수정된 파일의 상태를 표시하며, 변경된 내용을 이해하는 데 도움이 될 수 있습니다.
이러한 형식 옵션은 날짜 필터와 결합하여 프로젝트의 히스토리를 보다 효과적으로 이해하는 데 도움이 되는 강력한 쿼리를 만들 수 있습니다.
이 랩에서는 Git 을 사용하여 특정 날짜 범위 내의 커밋을 보는 방법을 배웠습니다. 다음 내용을 살펴보았습니다.
git log 명령을 사용하여 커밋 기록을 보는 방법--since 및 --until 옵션을 사용하여 특정 날짜 범위를 기준으로 커밋을 필터링하는 방법git log 출력을 사용자 정의하는 방법이러한 기술은 프로젝트 기록을 이해하고, 버그를 추적하고, 코드베이스의 개발 타임라인을 검토하는 데 필수적입니다. Git 을 계속 사용하면서 이러한 필터링 기술은 대규모 저장소에서도 쉽게 탐색하는 데 도움이 될 것입니다.