파일 복원과 되돌리기

Git 입문

George Boorman

Curriculum Manager, DataCamp

실수하기

레포의 4개 파일 중 3개가 스테이징되고 하나는 커밋됨: 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 입문

파일 unstaging

레포의 4개 파일 중 3개가 스테이징됨: report.md, mental health survey.csv, summary statistics.csv

Git 입문

파일 unstaging

요약 통계가 스테이징 영역에서 레포로 되돌려짐

Git 입문

단일 파일 unstaging

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

모든 파일 unstaging

  • 모든 파일을 unstaging 하려면:
git restore --staged
Git 입문

요약

Command Result
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...