[git] reset 으로 작업 되돌리기
특정 시점의 commit 으로 작업한 내용을 되돌리고 싶을 때가 있다.
git reset 을 이용해 이를 해결해보자!
먼저 branch 이동
현재 branch 는 main branch 이다.
이 branch 에서 reset 작업을 할 수도 있지만
안정성 확보를 위해 추가 branch 생성 및 이동 후
이동한 branch 에서 작업을 해보겠다.
아래 코드를 참고해보자
(checkout 대해서는 추후에 작성하겠다)
$ git checkout -b "추가 및 이동 예정인 branch" // "" 생략
reset option
위 사진과 같이 git reset 의 option 은 여러가지가 있지만
이 글에선 hard, soft 두 가지를 다뤄보겠다.
reset — hard
$ git reset --hard “commit HASH” // "-" 2개임, "" 생략
$ git reset --hard “commit HASH” // "-" 2개임, "" 생략
위 코드를 통해 reset 을 하면 아래 사진과 같이 작업하던 내용 자체가
reset 한 commit 에 따라서 강제로 변한다.
따라서 —hard option 은 위험한 option 이니 잘 판단해서 사용하면 되겠다.
예시
$ git reset --hard a29518a2fbe6efde79834c6e696ce918ffe17d78 // 최초 commit HASH
reset —hard 전 폴더 내용
branch : main
reset —hard 후 폴더 내용
branch : hardtest
reset — soft
$ git reset --soft “commit HASH” // "-" 2개임, "" 생략
$ git reset --soft “commit HASH” // "-" 2개임, "" 생략
위 코드를 통해 reset 을 하면 현재 commit ~ reset 전까지의 commit 이
git stage 위에 add 된다.
git log 를 통해 stage 를 확인해보면 stage 에 reset 전 까지의 commit 이
Changes to be committed 로 add 된 상태임을 알 수 있다.
따라서 soft opiton 은 파일 자체가 강제로 변하는
hard 보다는 안전한 선택이니 상황에 따라서 이용해보자
Author And Source
이 문제에 관하여([git] reset 으로 작업 되돌리기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@jaythomas/git-reset-으로-작업-되돌리기저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)