Git 커밋 작성자 확인 방법: 특정 작성자가 커밋했는지 확인하기

GitBeginner
지금 연습하기

소개

이 랩에서는 특정 작성자가 Git 커밋을 했는지 확인하는 방법을 배우게 됩니다. 두 가지 주요 방법을 살펴볼 것입니다: git log --author를 사용하여 커밋 기록을 필터링하여 특정 개인의 커밋을 확인하는 방법과, 커밋 해시와 함께 git show를 사용하여 단일 커밋의 작성자 세부 정보를 확인하는 방법입니다.

실습을 통해 샘플 Git 저장소 내에서 이러한 명령을 적용하는 연습을 할 것입니다. 작성자 이름으로 커밋을 필터링하는 방법과 git show를 사용하여 특정 커밋의 작성자 정보를 검사하는 방법을 시연하여 Git 기록에서 주어진 변경 사항의 기여자를 효과적으로 식별할 수 있도록 할 것입니다.

git log --author 실행하여 필터링

이 단계에서는 git log 명령과 함께 --author 플래그를 사용하여 커밋 기록을 필터링하는 방법을 배우겠습니다. 이는 특정 개인이 작성한 커밋만 보려는 경우에 유용합니다.

먼저, 프로젝트 디렉토리에 있는지 확인해 보겠습니다. 터미널을 열고 다음을 입력합니다:

cd ~/project/my-time-machine

이제 --author 플래그와 함께 git log를 사용하여 "Jane Doe"가 작성한 커밋을 확인해 보겠습니다. 설정 단계에서 작성자 이름을 구성했음을 기억하세요.

git log --author="Jane Doe"

이전 랩에서 작성한 커밋이 표시되어야 합니다:

commit a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6q7r8s9 (HEAD -> master)
Author: Jane Doe <jane.doe@example.com>
Date:   Mon Aug 7 10:00:00 2023 +0000

    Send a message to the future

다른 작성자의 커밋이 있는 경우 이 출력에 나타나지 않습니다. 이는 특정 개인의 기여에 집중하기 위해 커밋 기록을 쉽게 필터링할 수 있는 방법을 보여줍니다.

작성자별로 커밋 로그를 필터링할 수 있는 기능은 특히 팀으로 작업할 때 강력한 도구입니다. 이를 통해 특정 변경 사항을 누가 만들었는지 빠르게 확인하고 각 팀원의 기여를 이해할 수 있습니다.

로그 보기를 종료하려면 q를 누르세요.

git show 를 사용하여 작성자 확인

이 단계에서는 git show 명령을 사용하여 작성자 정보를 포함하여 특정 커밋의 세부 정보를 확인합니다. 이는 단일 커밋을 자세히 검사하려는 경우에 유용합니다.

여전히 ~/project/my-time-machine 디렉토리에 있는지 확인하십시오.

먼저, 커밋 해시 (고유 식별자) 를 얻어 보겠습니다. git log --oneline을 사용하여 로그의 더 짧은 버전을 얻을 수 있습니다:

git log --oneline

다음과 유사한 출력이 표시되어야 합니다:

a1b2c3d (HEAD -> master) Send a message to the future

첫 번째 부분인 a1b2c3d (해시는 다를 것입니다) 는 짧은 커밋 해시입니다. 이 해시를 복사합니다.

이제 git show 명령을 사용하고 복사한 커밋 해시를 입력합니다:

git show <paste_your_commit_hash_here>

예를 들어, 해시가 a1b2c3d인 경우 다음과 같이 입력합니다:

git show a1b2c3d

출력은 작성자를 포함하여 해당 특정 커밋의 세부 정보를 표시합니다:

commit a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6q7r8s9 (HEAD -> master)
Author: Jane Doe <jane.doe@example.com>
Date:   Mon Aug 7 10:00:00 2023 +0000

    Send a message to the future

diff --git a/message.txt b/message.txt
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/message.txt
@@ -0,0 +1 @@
+Hello, Future Me

Author: 줄에서 "Jane Doe"가 이 커밋을 작성했음을 명확하게 확인할 수 있습니다. git show 명령은 개별 커밋을 검사하고, 정확히 어떤 파일이 변경되었는지 확인하고, 해당 변경 사항의 내용을 볼 수 있는 강력한 방법입니다.

보기를 종료하려면 q를 누르세요.

여러 작성자로 테스트

이 단계에서는 다른 작성자가 커밋을 수행하도록 시뮬레이션하여 git log --author가 여러 기여자와 함께 어떻게 작동하는지 확인합니다.

먼저, 다음 커밋에 대한 Git 작성자 구성을 변경해 보겠습니다. 이 저장소에 대해서는 일시적으로 수행할 수 있습니다:

git config user.name "John Smith"
git config user.email "john.smith@example.com"

이제 "John Smith"로 새 파일을 만들어 보겠습니다:

echo "Hello from John" > johns-file.txt

새 파일을 스테이징 영역에 추가합니다:

git add johns-file.txt

그리고 "John Smith"로 변경 사항을 커밋합니다:

git commit -m "Add a file from John"

"John Smith"가 새 커밋을 생성했음을 나타내는 출력이 표시되어야 합니다.

이제 git log를 사용하여 전체 기록을 확인해 보겠습니다:

git log

"Jane Doe"와 "John Smith"가 작성한 두 개의 커밋이 표시됩니다.

이제 로그를 필터링하여 "Jane Doe"가 작성한 커밋만 표시해 보겠습니다:

git log --author="Jane Doe"

이렇게 하면 첫 번째 커밋만 표시됩니다.

마지막으로, 로그를 필터링하여 "John Smith"가 작성한 커밋만 표시해 보겠습니다:

git log --author="John Smith"

이렇게 하면 두 번째 커밋만 표시됩니다.

이는 git log --author가 작성자를 기반으로 커밋을 필터링하는 데 효과적임을 보여주며, 이는 협업 프로젝트에서 기여를 추적하는 데 필수적입니다.

로그 보기를 종료하려면 q를 누르세요.

요약

이 랩에서는 특정 작성자가 Git 커밋을 수행했는지 확인하는 방법을 배웠습니다. 먼저 git log --author 명령을 사용하여 커밋 기록을 필터링하고 지정된 작성자가 수행한 커밋만 표시하여 팀 환경 내에서 개별 기여에 집중하는 데 유용함을 보여주었습니다.

이어서, 특정 커밋 해시와 함께 git show 명령을 사용하여 해당 커밋에 대한 자세한 정보 (작성자 이름 및 이메일 포함) 를 확인하여 특정 변경 사항의 작성자를 확인하는 방법을 제공했습니다. 마지막으로, 여러 작성자를 사용하여 이러한 방법들을 테스트하여 서로 다른 개인의 기여를 구별하는 데 효과적인지 확인했습니다.