git log 실행하여 되돌리기 커밋 찾기
이 단계에서는 git log를 사용하여 되돌려진 (reverted) 커밋을 찾는 방법을 배웁니다. 커밋을 되돌린다는 것은 이전 커밋에서 도입된 변경 사항을 실행 취소하는 새로운 커밋을 생성하는 것을 의미합니다. 이는 실수를 했을 때 원래 커밋의 히스토리를 잃지 않고 쉽게 실행 취소하려는 경우에 유용합니다.
먼저, 프로젝트 디렉토리에 있는지 확인합니다. 터미널을 열고 my-time-machine 디렉토리로 이동합니다.
cd ~/project/my-time-machine
이제, 나중에 되돌릴 커밋을 포함하여 프로젝트 히스토리를 시뮬레이션하기 위해 몇 개의 커밋을 생성해 보겠습니다.
첫 번째 파일을 생성합니다.
echo "Initial content" > file1.txt
git add file1.txt
git commit -m "Add file1"
다음과 유사한 출력을 볼 수 있습니다.
[master (root-commit) a1b2c3d] Add file1
1 file changed, 1 insertion(+)
create mode 100644 file1.txt
이제, 더 많은 내용을 추가하고 다른 커밋을 만듭니다.
echo "Adding more content" >> file1.txt
git add file1.txt
git commit -m "Add more content to file1"
다음과 유사한 출력을 볼 수 있습니다.
[master 4e5f6g7] Add more content to file1
1 file changed, 1 insertion(+)
다음으로, 나중에 되돌릴 커밋을 만듭니다.
echo "This commit will be reverted" > file2.txt
git add file2.txt
git commit -m "Add file2 (will be reverted)"
다음과 유사한 출력을 볼 수 있습니다.
[master 8h9i0j1] Add file2 (will be reverted)
1 file changed, 1 insertion(+)
create mode 100644 file2.txt
이제 마지막 커밋을 되돌립니다. git revert HEAD를 사용하여 가장 최근의 커밋을 되돌릴 수 있습니다.
git revert HEAD --no-edit
--no-edit 플래그는 Git 에게 편집기를 열지 않고 되돌리기 커밋 메시지를 자동으로 생성하도록 지시합니다. 다음과 유사한 출력을 볼 수 있습니다.
[master k2l3m4n] Revert "Add file2 (will be reverted)"
1 file changed, 1 deletion(-)
delete mode 100644 file2.txt
훌륭합니다! 이제 "Add file2 (will be reverted)" 커밋의 변경 사항을 되돌리는 커밋을 생성했습니다.
이제 git log를 사용하여 커밋 히스토리를 보고 되돌리기 커밋을 찾습니다.
git log --oneline
다음과 유사한 출력을 볼 수 있습니다.
k2l3m4n (HEAD -> master) Revert "Add file2 (will be reverted)"
8h9i0j1 Add file2 (will be reverted)
4e5f6g7 Add more content to file1
a1b2c3d Add file1
"Revert 'Add file2 (will be reverted)'" 커밋 메시지를 확인하십시오. 이는 이 커밋이 이전 커밋의 되돌리기임을 명확하게 나타냅니다. --oneline 플래그와 함께 git log를 사용하면 커밋 히스토리의 요약을 빠르게 확인하고 메시지를 통해 되돌리기 커밋을 식별할 수 있습니다.