기능검색

소스트리 commit 이전으로 돌리기 (흔적 지우기) Git Bash 사용

yangcotton 2023. 1. 10. 19:42
$ git reset bbb

소스트리에 잘못소스를 올리거나 날렸을 경우 commit을 이전으로 돌리고싶을때

 

가장 쉬운방법은

그 잘못된 커밋 바로 밑에 있는 커밋버전에서 우 클릭 >> 커밋 초기화 >> soft 선택을 하면 되는 경우도 있다.

 

근데 용량때문인지 안될때도 있고 흔적을 지우고 싶을 때도 있다.

 

그렇다면

C 드라이브에서  > wafful>workspace>해당프로젝트>우클릭 하면 Git Bash Here 이 있다.

 

$ git log -5 --pretty=format:"%h - %an, %ar : %s"

이렇게하면 최근 5개의 리스트가 뜨는데 그중에 돌아가고 싶은 시점으로 가면된다.

 

예를들어

 

aaa -~~ 5 minutes ago : ~~~

bbb -~~ 15 minutes ago : ~~~

ccc -~~ 35 minutes ago : ~~~

 

이렇게 있을때 5분전에 올린 aaa만 지우고 싶다면

$ git reset bbb

git reset 는 커밋취소다

 

그럼 번복 리스트가 뜰것이다. 로딩.. 기다리기..

 

그 후 

$ git reset --hard

를 해준다

& git reset --soft 를 하면 기록이 남는다. 작업보존을 하려면 이렇게 하고 이걸 이용해 다시 올릴 수 있다.

 

& git clean -fd

디렉토리 포함하여 삭제해준다.

 

  • -f, --force : 강제로 삭제
  • -d : untracked directory 삭제
$ git push -f
  • local repo의 브랜치를 remote repo에 업로드 (-f :강제로)

끝 ~~

 

*참고*

Shows the list of formatted commits

git log --pretty=format:"%h - %an, %ar : %s"