ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Git 입문편] 9. reset
    Git 2021. 3. 8. 23:33

    <git reset>

    본 포스팅은 저의 인터넷 강의인 실무자가 알려주는 Git - 입문편의 강의안을 바탕으로 작성하였습니다.

    reset

    • 상태를 이전 커밋으로 reset 시킴
    • 옵션에 따라서 몇 커밋 이전 / 어느 단계(Staged, Modified, Unmodified)까지 reset 할지를 결정
    • show: 커밋 정보를 보여줌
      • HEAD == @, ~ == ^
      • ex) HEAD~, HEAD^, @~, @^ : 한 커밋 이전
      • @~2: 2커밋 이전

     

    옵션

    • --soft
      • commit 명령만 되돌림 (Staged 상태가 됨)
      • HEAD만 해당 커밋으로 돌림
    vi README.md
    git ci -am 'Commit for reset exer'
    git reset --soft @^
    git st
    
    ---
    
    On branch develop
    Changes to be committed:
    (use "git reset HEAD <file>..." to unstage)
    
    modified:   README.md
    • --mixed (기본)
      • commit 명령도 되돌리고, add 명령까지 되돌림 (Modified 상태가 됨)
    git ci -am 'Commit for reset exer'
    git reset --mixed @~1
    git st
    
    ---
    
    On branch develop
    Changes not staged for commit:
      (use "git add <file>..." to update what will be committed)
      (use "git checkout -- <file>..." to discard changes in working directory)
    
      modified:   README.md      
    • --hard
      • commit 명령도 되돌리고, add 명령도 되돌리고, 워킹 디렉토리까지 되돌림 (Unmodified 상태가 됨)
      • 워킹 디렉토리까지 되돌려 버리기 때문에 복구가 불가능! (가능한 방법이 있긴함)
    git ci -am 'Commit for reset exer'
    git reset --hard @^
    git st
    
    ---
    
    On branch develop
    nothing to commit, working tree clean
    •  

    'Git' 카테고리의 다른 글

    여러 branch 한번에 여러개 지우기  (0) 2021.03.10
    [Git 입문편] 10. cherry-pick, tag  (0) 2021.03.08
    [Git 입문편] 8. rebase  (0) 2021.03.08
    [Git 입문편] 7. stash, merge  (0) 2021.03.08
    [Git 입문편] 6. push, pull & fetch  (0) 2021.03.07

    댓글

Designed by Tistory.