되돌리기
코드를 수정하다가 더 망가뜨린 것 같을 때, 또는 이전 상태로 돌아가고 싶을 때 사용하는 방법들을 알아봅시다. 코드를 망쳤다고 세상이 끝나지 않습니다.
에디터에서 되돌리기 (가장 간단)
방금 한 수정을 취소하고 싶다면:
| 운영체제 | 단축키 | 효과 |
|---|---|---|
| Windows | Ctrl + Z | 방금 한 변경을 되돌림 |
| Mac | Cmd + Z | 방금 한 변경을 되돌림 |
여러 번 누르면 더 전의 상태로 돌아갑니다. 가장 쉽고, 가장 자주 쓰는 방법입니다.
너무 많이 되돌렸다면 Ctrl + Shift + Z (또는 Cmd + Shift + Z)를 누르면 다시 앞으로 갑니다.
한 파일만 원래대로 (git checkout)
특정 파일 하나만 마지막으로 저장(커밋)한 상태로 되돌리고 싶을 때:
git checkout -- src/app/page.tsx
이렇게 하면 page.tsx 파일이 마지막 커밋 시점으로 돌아갑니다. 그 파일에 한 모든 수정이 사라지니 주의하세요.
파일 이름을 모르겠다면
git status를 입력하면 수정된 파일 목록이 나옵니다.
잠깐 치워두기 (git stash)
"지금 수정한 것을 버리고 싶지는 않은데, 일단 원래 상태를 보고 싶어." 이런 경우가 있습니다.
치워두기:
git stash
수정한 내용이 임시 보관함에 들어가고, 코드는 마지막 커밋 상태로 돌아갑니다.
다시 꺼내기:
git stash pop
임시 보관함에서 꺼내서 수정 내용을 다시 적용합니다.
옷장에 비유하면 이렇습니다:
>
-
git stash= 입고 있던 옷을 옷장에 넣고, 원래 옷으로 갈아입기
-
git stash pop= 옷장에서 아까 옷을 다시 꺼내 입기
완전히 처음부터 (최후의 수단)
정말 어쩔 수 없을 때, 프로젝트를 처음부터 다시 받는 방법이 있습니다.
- 현재 프로젝트 폴더를 삭제합니다 (또는 이름을 바꿉니다)
- GitHub에서 다시 받아옵니다:
git clone 내-저장소-주소
- 필요한 것을 다시 설치합니다:
npm install
이 방법은 마지막 커밋까지만 돌아갑니다. 그래서 작업 중간중간에 커밋을 해두는 것이 중요합니다.
>
`
git add .
git commit -m "메뉴 페이지 완성"
git push
`
>
이렇게 해두면 언제든 그 시점으로 돌아올 수 있습니다.
되돌리기 방법 정리
상황에 따라 적절한 방법을 선택하세요:
| 상황 | 방법 | 명령어 |
|---|---|---|
| 방금 한 수정을 취소 | 에디터 되돌리기 | Ctrl + Z |
| 파일 하나를 원래대로 | git checkout | git checkout -- 파일이름 |
| 수정 내용을 잠깐 보관 | git stash | git stash → git stash pop |
| 완전히 처음부터 | 다시 받기 | 폴더 삭제 → git clone |
대부분의 경우 Ctrl + Z로 충분합니다. 나머지 방법은 "이런 것도 있구나" 정도로 알아두세요.
예방이 최고의 해결책
되돌리기보다 더 좋은 것은 미리 저장해 두는 것입니다.
- 뭔가 잘 작동하면 바로 커밋하세요
- "일단 해볼까" 하는 실험 전에 커밋하세요
- 큰 변경을 하기 전에 커밋하세요
커밋은 게임의 세이브 포인트와 같습니다. 자주 저장할수록 안심이 됩니다.
이 절의 요약
- Ctrl + Z가 가장 간단한 되돌리기입니다
git checkout -- 파일이름으로 한 파일만 원래대로 돌릴 수 있습니다git stash로 수정 내용을 임시 보관했다가 나중에 꺼낼 수 있습니다- 최후의 수단으로 폴더를 삭제하고
git clone으로 다시 받을 수 있습니다 - 가장 좋은 방법은 자주 커밋해서 세이브 포인트를 만들어 두는 것입니다