728x90

🔹 배경

어제 배운 git add와 git commit은 변경 사항이 생겼을 때 버전 정보를 업데이트하는 과정이에요.
그렇다면, 이전 버전으로 돌아가려면 어떻게 해야 할까요? 🤔
오늘은 git reset과 git restore를 활용해 과거로 되돌아가는 방법을 알아볼게요!


1️⃣ 이전 버전으로 복구하는 방법

(1) Git의 구조 이해하기

Git에서는 파일을 수정하면,
1️⃣ **작업 트리(Working Directory)**에서 변경된 내용을
2️⃣ git add 명령어로 **스테이징 영역(Staging Area)**에 올린 뒤
3️⃣ git commit을 실행해 **저장소(Repository)**에 저장해요.

반대로 이전 상태로 되돌릴 때는 아래 명령어를 사용하면 돼요.
✅ git reset → 특정 커밋으로 돌아가기
✅ git restore --staged <파일명> → 스테이징된 파일 취소
✅ git restore <파일명> → 작업 트리에서 수정한 내용 취소


(2) git reset - 특정 커밋으로 되돌리기

git reset은 생성된 버전(커밋)에서 다시 과거 버전으로 돌아갈 때 사용하는 명령어예요.

1️⃣ 되돌아갈 커밋 해시 확인하기

2️⃣ 특정 커밋으로 되돌리기 (해당 커밋 이후 변경 사항 삭제됨)

3️⃣ 이전 커밋으로 되돌리기 (변경 사항 유지)

💡 --soft 옵션을 사용하면 변경 사항이 유지돼요!


(3) git restore --staged <파일명> - 스테이징 취소

파일을 git add로 스테이징했는데, 다시 취소하고 싶을 때 사용해요.

1️⃣ 현재 상태 확인

💡 "Changes to be committed" 상태라면 스테이징된 상태예요.

2️⃣ 스테이징 해제

3️⃣ 변경 사항 확인

💡 파일이 다시 "Untracked files" 상태로 돌아갔다면 성공! 🎉


(4) git restore <파일명> - 수정된 파일 되돌리기

파일을 수정했는데 다시 원래 상태로 돌리고 싶다면? git restore를 사용하면 돼요!

1️⃣ 수정된 파일 확인하기

💡 아래처럼 modified 상태로 나오면 변경된 파일이 있다는 뜻이에요.

2️⃣ 변경 사항 취소

3️⃣ 정상적으로 복구됐는지 확인

💡 modified 표시가 사라졌다면 성공! 🎉


📌 정리

✔️ git reset → 특정 커밋으로 되돌아가기
✔️ git restore --staged → 스테이징된 파일 취소
✔️ git restore → 변경된 파일을 원래 상태로 복구

Git에서 실수했을 때 당황하지 말고 차근차근 복구하면 돼요! 😉


📖 참고 자료

  • "깃&깃허브 입문" – 이지스퍼블리싱
728x90

+ Recent posts