본문 바로가기

Git

[GitHub&소스트리] 4. 변경 사항 취소하기 & Branch

작업을 하다보면 수많은 변경 사항들이 생기고, 변경하기 이전으로 되돌아 가야 하는 상황들이 발생합니다. 

그런데 변경 사항을 작성하고 저장까지 한 상태에서 다시 변경 이전의 내용으로 되돌아 갈 수 있을까요?

 


1) 변경 사항 취소하기 

 

git에서는 변경 사항을 취소하기 위해 특정 커밋으로 되돌아가는 checkout이라는 명령어를 사용하는데, SourceTree에서 '코드뭉치 버리기' 기능을 이용하여 더욱 쉽게 가능합니다.

 

 

 


2) 브랜치(Branch)

 

기존의 코드를 지우지 않고 그 코드를 대체할 다른 코드를 작성하고 싶을 때 주석 처리를하곤 합니다. 

하지만 기존의 코드를 주석 처리하고 새로운 코드를 작성하게 되면 코드가 지저분해지고 복잡해지면서 스파게티 코드가 되어버립니다.

 

이런 경우 주석 처리 대신 브랜치를 이용할 수 있습니다.

 

브랜치(branch):  독립적으로 어떤 작업을 하기 위한 가상의 작업 공간. 기존 내용을 유지한 채 새로운 내용으로 변경 및 추가하고 싶을 때 사용한다.

 

되돌아가고 싶은 위치에서 마우스 우클릭을 하여 브랜치를 선택합니다. 

 

'version2'라는 브랜치가 생성되었습니다. 

 

새로운 내용을 작성한 후 커밋을 해줍니다.

 

브랜치를 생성한 후 해당 브랜치를 더블 클릭하여 선택하면 에디터에서 변경 이전의 코드로 되돌아갑니다.

이와 같이 소스트리에서는 브랜치 이름을 더블 클릭하는 것만으로 체크아웃이 가능합니다.

 

 

 

* 헤드(HEAD) 브랜치: 현재 작업 중인 브랜치.

 ↳ 한 번에 하나의 브랜치만 작업 가능합니다. 

 ↳ 커밋 앞에 검은 테두리의 흰 동그라미는 현재 작업 중인 브랜치를 의미합니다.

 

* main 브랜치: 기본 브랜치. 일반적으로 최종본을 main 브랜치에 둡니다.

 


[브랜치 삭제하기]

 

현재 브랜치(헤드 브랜치)가 아닌 경우 안 쓰는 브랜치를 간단하게 삭제할 수 있습니다. 

 

소스트리의 좌측 화면 브랜치 메뉴에서 삭제할 브랜치 이름을 우클릭하여 브랜치 삭제를 선택합니다.

 

브랜치를 삭제할 때는 삭제를 함으로써 사라지는 커밋이 있는지 없는지 주의 깊게 확인합니다.