되돌리기 기록 보기

Beginner

This tutorial is from open-source community. Access the source code

소개

Git 은 개발자가 코드베이스의 변경 사항을 추적할 수 있도록 하는 강력한 버전 관리 시스템입니다. 하지만 때로는 실수를 해서 변경 사항을 되돌려야 할 때가 있습니다. Git 은 변경 사항을 되돌리는 여러 가지 방법을 제공하지만, 지금까지 수행한 모든 작업을 추적하는 것은 어려울 수 있습니다. 이 챌린지에서는 git reflog 명령을 사용하여 Git 에서 "되돌리기" 기록을 보는 방법을 배우게 됩니다.

"되돌리기" 기록 보기

개발자로서 코드베이스에 적용한 변경 사항을 되돌려야 할 수 있습니다. Git 은 git reset 또는 git revert 명령을 사용하는 등 변경 사항을 되돌리는 여러 가지 방법을 제공합니다. 하지만 git rebase와 같은 고급 명령을 사용한 경우 특히, 수행한 모든 작업을 추적하는 것은 어려울 수 있습니다. 이럴 때 git reflog 명령이 유용합니다.

git reflog 명령은 Git 참조 로그를 표시합니다. 이는 리포지토리에서 수행한 모든 작업의 기록입니다. 여기에는 커밋뿐만 아니라 브랜치 병합, 리베이스 및 리셋과 같은 다른 작업도 포함됩니다. 참조 로그를 보면 커밋 기록에 표시되지 않더라도 리포지토리에 적용한 모든 변경 사항의 전체 기록을 볼 수 있습니다.

Git 에서 "되돌리기" 기록을 보려면 git reflog 명령을 사용할 수 있습니다. 리포지토리에 몇 가지 변경 사항을 적용했는데 이를 되돌리고 싶다고 가정해 보겠습니다.

  1. 명령줄을 사용하여 리포지토리로 이동합니다.
cd git-playground
  1. 이제 실수를 해서 마지막 커밋을 되돌리고 싶다고 가정해 보겠습니다. git reset 명령을 사용하여 이 작업을 수행할 수 있습니다.
git reset HEAD~1
  1. 이 명령을 실행한 후 또 다른 실수를 해서 리셋을 되돌리고 싶다는 것을 깨달을 수 있습니다. 이럴 때 git reflog 명령이 유용합니다. 이를 사용하여 참조 로그를 보고 이전 커밋의 커밋 해시를 찾을 수 있습니다.
git reflog

이렇게 하면 리셋을 포함하여 리포지토리에서 수행한 모든 작업 목록이 표시됩니다.

cf80005 (HEAD -> master) HEAD@{0}: reset: moving to HEAD~1
d22f46b (origin/master, origin/feature-branch, origin/HEAD) HEAD@{1}: clone: from https://github.com/labex-labs/git-playground.git
  1. 이 출력에서 이전 커밋 해시가 d22f46b임을 알 수 있습니다. 이 해시를 사용하여 리포지토리를 이전 커밋으로 다시 리셋할 수 있습니다.
git reset d22f46b
  1. 결과 확인을 위해 기록 커밋 기록을 봅니다.
git log

요약

이 챌린지에서는 git reflog 명령을 사용하여 Git 에서 "되돌리기" 기록을 보는 방법을 배웠습니다. 참조 로그는 커밋, 병합, 리베이스 및 리셋을 포함하여 리포지토리에서 수행한 모든 작업의 기록입니다. 참조 로그를 보면 커밋 기록에 표시되지 않더라도 리포지토리에 적용한 모든 변경 사항의 전체 기록을 볼 수 있습니다. 이는 코드베이스에 적용한 변경 사항을 되돌려야 할 때 특히 유용할 수 있습니다.