본문 바로가기
Git

[Git] 취소 상황

by qoth_0 2023. 12. 12.
728x90
반응형

git 취소 상황

  • 특정 STEP까지의 저장 사항을 취소
    • working directory의 수정사항 취소
    • add 이후 취소
    • commit 이후 취소
    • push 후 origin까지 배포된 사항 취소
  • working directory의 수정사항 취소
    • git checkout .
      • 파일 수정사항의 취소
      • .은 현재 head위치 commit으로 checkout 함으로서 working directory의 수정사항을 취소
    • git clean -fdx
      • 파일을 신규추가(untracked file)한 경우의 취소
    • git checkout . | git clean -fdx
      • 수정 및 추가 모두 취소
    • 개발툴(intellij, vscode등) 사용 시 쉽게 수정사항 취소 가능
  • add 이후 취소
    • test2.txt 신규생성
    • git status → untracked file
    • git add . 후 git status → Changes to be committed
    • git add 취소
      • git reset 또는 git restore --staged
  • commit 이후 취소
    • git reset HEAD~1(또는 HEAD^)
      • unstaged 상태로 만듬 : 워킹디렉토리까지 돌아감
    • git reset —soft HEAD~1
      • staged 상태 유지 : 커밋 직전 상태까지 돌아감
  • push 후 origin까지 배포된 사항 취소
    • git revert 커밋ID
    • 특정 커밋버전을 취소시키는 새로운 commit을 생성하기 때문에 push만 하면 됨

실습

로컬에 새 파일 생성
Untracked files에 위치

add 한 후 git status로 확인

add 후 - Changes to be committed

add 취소(reset) 후 status확인

git reset 후 - untracked로 다시 돌아감

commit까지 한 후 취소(reset HEAD) → git status 확인

git reset HEAD~1 후 - not staged 상태 : add 부터 해야 반영가능

commit까지 한 후 취소(reset --soft HEAD) → git status 확인

git reset —soft 후 - changes to 상태 : add 없이 commit부터 하면 됨

push까지 한 이후 git revert로 취소 후 다시 push

push
github 반영
commit 5883~ 으로 revert 해보자 - git revert 5883
저장하고 나오기

커밋을 취소시키는 커밋아이디 생성됨 - 3a0088

push 후 git log

반영완료

728x90
반응형

'Git' 카테고리의 다른 글

[Git] case별 git pull  (1) 2023.12.15
[Git] diff, fetch  (0) 2023.12.13
[Git] pull과 충돌  (0) 2023.12.11
[Git] 기본 명령어  (0) 2023.12.11
[Git] config, ignore  (0) 2023.12.11