본문 바로가기
여러가지/git

Git에서 특정 커밋으로 이동하는 방법

by 포스트it 2024. 11. 21.
반응형

Git에서 특정 커밋으로 이동하는 방법

Git을 사용하다 보면 이전 상태로 돌아가거나 특정 커밋으로 이동해야 하는 상황이 발생할 수 있습니다. 이번 포스팅에서는 Git에서 특정 커밋으로 이동하는 방법을 최대한 쉽게 설명하고자 합니다.

1. 커밋 해시 찾기

먼저 이동하고자 하는 커밋 해시(commit hash)를 알아야 합니다.커밋 해시는 각 커밋을 고유하게 식별하는 문자열입니다.

git log --oneline

이 명령어를 입력하면 간단한 형태로 커밋 로그를 확인할 수 있습니다.

 

예시:

 
f3a1c2d 추가: 회원 가입 기능
b2b3c4e 수정: 로그인 버그 수정
a1b2c3d 초기 커밋​

원하는 커밋의 해시(예: b2b3c4e)를 복사합니다.

2. 특정 커밋으로 이동하기

이제 해당 커밋으로 이동하기 위해 다음 명령어를 사용합니다.

git checkout [커밋 해시]

예시:

git checkout b2b3c4e

이렇게 하면 작업 디렉토리가 해당 커밋의 상태로 변경됩니다.

3. Detached HEAD 상태 이해하기

특정 커밋으로 체크아웃하면 Detached HEAD 상태가 됩니다.

이는 현재 브랜치가 특정 커밋을 가리키고 있지만, 어떤 브랜치에도 연결되어 있지 않다는 뜻입니다.

Detached HEAD 상태에서는 새로운 변경사항을 커밋하면 나중에 찾기 어려울 수 있으므로 주의해야 합니다.

4. 새로운 브랜치 생성하여 작업하기

Detached HEAD 상태에서 작업을 이어나가려면 새로운 브랜치를 생성하는 것이 좋습니다.

git checkout -b [새로운 브랜치 이름]​

예시:

git checkout -b fix-login-bug

이제 fix-login-bug라는 새로운 브랜치에서 안전하게 작업을 진행할 수 있습니다.

5. 원래 브랜치로 돌아가기

작업을 마치고 원래 브랜치로 돌아가고 싶다면 다음 명령어를 사용합니다.

git checkout [브랜치 이름]

예시:

git checkout main

요약

  • 커밋 해시 찾기: git log --oneline
  • 특정 커밋으로 이동: git checkout [커밋 해시]
  • 새 브랜치 생성: git checkout -b [새로운 브랜치 이름]
  • 원래 브랜치로 복귀: git checkout [브랜치 이름]

결론

Git에서 특정 커밋으로 이동하는 방법은 간단하지만,

Detached HEAD 상태를 올바르게 이해하고 사용하는 것이 중요합니다.

새로운 브랜치를 생성하여 안전하게 작업을 진행하세요.

728x90
반응형

댓글