파일 복원 및 되돌리기

Git 입문

George Boorman

Curriculum Manager, DataCamp

오류 발생

리포지토리의 네 개 파일 중 세 개는 스테이징 영역에 추가되고 하나는 커밋됨: report.md, mental health survey.csv, summary statistics.csv

Git 입문

파일 되돌리기

  • 이전 커밋 전 상태로 저장소 복원

  • git revert

    • 이전 버전을 복원하고 커밋을 만듭니다
    • 지정된 커밋에서 업데이트된 모든 파일을 복원합니다
    • a845edcb, ebe93178
    • HEAD, HEAD~1
git revert HEAD
Git 입문

파일 되돌리기

git revert HEAD

커밋을 보여주는 텍스트 편집기

  • 저장: Ctrl + O, 그리고 Enter
  • 종료: Ctrl + X
Git 입문

파일 되돌리기

[main 7d11f79] Revert "Adding fresh data for the survey."
 Date: Tue Jul 30 14:17:56 2024 +0000
 1 file changed, 3 deletions(-)
Git 입문

git revert 플래그

  • 텍스트 편집기 열지 않기
    git revert --no-edit HEAD
    
  • 커밋 없이 되돌리기(파일을 스테이징 영역으로 가져오기)
    git revert -n HEAD
    
Git 입문

단일 파일 되돌리기

  • git revert는 개별 파일이 아닌 커밋에 적용됩니다

  • 단일 파일을 되돌리려면:

    • git checkout
    • 커밋 해시 또는 HEAD 구문 사용
git checkout HEAD~1 -- report.md
Git 입문

체크아웃 확인

git status
On branch main
Changes to be committed:
  (use "git restore --staged <file>..." to unstage)

        modified:   report.md
Git 입문

커밋 만들기

git commit -m "Checkout previous version of report.md"
[main daa6c87] Checkout previous version of report.md
 1 file changed, 1 deletion(-)
Git 입문

파일 스테이징 해제하기

리포지토리의 네 개 파일 중 세 개가 스테이징 영역에 추가됨: report.md, mental health survey.csv, summary statistics.csv

Git 입문

파일 스테이징 해제하기

요약 통계가 스테이징 영역에서 다시 repo로 이동됨

Git 입문

단일 파일 스테이징 해제하기

  • 단일 파일의 스테이징을 해제하려면:
git restore --staged summary_statistics.csv
  • 파일을 수정합니다
git add summary_statistics.csv
git commit -m "Adding age summary statistics"
Git 입문

모든 파일 스테이징 해제하기

  • 모든 파일의 스테이징을 해제하려면:
git restore --staged
Git 입문

요약

명령 결과
git revert HEAD 특정 커밋의 모든 파일을 되돌리기
git revert HEAD --no-edit 텍스트 편집기를 열지 않고 되돌리기
git revert HEAD -n 새 커밋을 만들지 않고 되돌리기
git checkout HEAD~1 -- report.md 이전 커밋에서 단일 파일 되돌리기
git restore --staged report.md 스테이징 영역에서 단일 파일 제거
git restore --staged 스테이징 영역에서 모든 파일 제거
Git 입문

연습해 봅시다!

Git 입문

Preparing Video For Download...