본문 바로가기

SCM/Git Source Tree

05. 코드 리셋하기

 
"폐기(Discard)" 기능은 아직 커밋하지 않은 코드를 
 
최종 커밋한 내용으로 바꿔주는 기능이다.
 
 
 

아직 커밋하지 않은 파일을 되돌리기
 
 
1. 기존파일
 
아래와 같은 파일을 Commit 한 상태에서
 
 
 
 

2. 파일 수정하기
 
ccc 를 지우고 SourceTree 를 확인해보면
 
 
아래와 같이 변경된 내용이 보인다.
 
 
 
 

3. 폐기(Discard) 하기
 
이 상태에서 폐기(Discard) 를 누르면
 
 
 
아래와 같은 다이얼로그가 나타나고 OK 를 누르면 
 
마지막 Commit 한 내용으로 해당 파일이 복원된다.
 
 
 
 

이미 커밋한 파일을 이전 커밋한 파일로 되돌리기 - Hard 옵션
 
커밋한 내용이 맘에 들지 않아서 아예 이전 코드로 되돌리려는 경우는
 
아래의 사항을 따르면 된다.
 
아래 사항을 따르면 선택한것 이후의 버전들은 모두 사라지고 
 
최종 버전으로 선택한 버전이 올라간다.
 
현재 로컬 파일의 상태는 선택한 버전으로 교체된다.
 
 
 

1. 해당 커밋으로 현재 브랜치 이동
 
복원하고자 하는 지점에 해당하는 버전을 선택하고 컨텍스트 메뉴를 띄워
 
"해당 커밋으로 현재 브랜치 이동" 를 선택한다.
 
 
 
 

2. Hard 옵션 선택
 
아래와 같은 다이얼로그가 나타나는데 모든 내용을 되돌리는 Hard 옵션을 선택한다.
 
 
 
 

3. 경고창 확인
 
이 부분이 굉장히 여파가 클 수 있기 때문에 다시 한번 물어본다.
 
 
 
 

4. 결과 확인
 
 master 를 선택해 보면 마지막으로 커밋한 내용이 사라졌음을 확인할 수 있다.
 
 
 
 

이미 커밋한 파일을 이전 커밋한 파일로 되돌리기 - Mixed 옵션
 
현재 파일을 유지하되 필요 이전 커밋을 최종 파일로 만들기 위해서는 
 
위의 옵션중에 Mixed 를 선택하면 된다.
 
즉 동작은 동일하되
 
(선택한것 이후의 버전들은 모두 사라지고 최종 버전으로 선택한 버전이 올라감)
 
내 로컬 파일은 현재 그대로 유지된다.
 
 
 
 
 
 
 
 
 
 
 
 
 

'SCM > Git Source Tree' 카테고리의 다른 글

07. 브랜치 만들기  (0) 2020.01.28
06. 코드 리버트하기  (0) 2020.01.28
04. 스테이지 공간  (0) 2020.01.28
03. 버전 만들기 ( Commit )  (0) 2020.01.28
02. 로컬저장소 만들기  (0) 2020.01.28