programming/git

소스트리(source tree) 이용해서 git 사용하기②

dmchoi 2021. 2. 28. 19:54

되돌리기

각각 버전들에 해당하는 코드들을 보는것 뿐만 아니라, 과거의 특정 상태의 코드로 돌아갈 수도 있어야한다. 이런 점에서 버전관리 시스템은 매우 중요함.

1. Discard

어떤 파일을 수정하고 커밋 하기 전 상태이면 폐기(Discard) 기능을 통해서 수정한 내용을 취소하고 가장 최신 버전의 상태로 돌아갈 수 있다.

 

2. Reset

이미 커밋한 버전을 취소하는 방법. 버전이 모두 날라가기 때문에 조심해서 사용해야 함

 

1. 돌아가고 싶은 버전 선택 - reset to commit - using mode- hard

: 선택한 버전 이후 모든 버전이 모두 삭제 됨

 

2. 돌아가고 싶은 버전 선택 - reset to commit - using mode- mixed

: 선택한 버전 이후 모든 버전은 삭제하면서 working copy의 상태는 아직 커밋하지 않은 상태로 유지시킴

 

3. Revert

선택한 버전을 취소해서 그 버전 이전 상태로 되돌리는 기능

버전을 삭제하지 않으면서 수정사항으로 돌아가고 싶을 때 사용

 

버전 선택 - Reverse commit(커밋 되돌리기)

 

이전 버전은 남아있지만 이전 버전의 수정사항은 취소되고 새롭게 커밋 됨

 

어떤 특정한 상태로 revert 하고 싶다면 역순으로 위에서부터 revert해야함 그렇지 않으면 충돌이 발생한다.

 

 

Reset은 선택한 버전의 상태로 돌아오는 것(버전을 지움)이라면,

Revert는 선택한 버전을 취소해서 그 이전 상태로 돌리는 것(버전을 유지하면서 되돌린 버전으로 커밋을 만들어줌)