최근 git을 사용하면서 추가버전을 롤백하게 되어 과거버전으로 돌아가야 할 일이 생겼습니다.
기존에 사용하던 svn은 여러가지 기능 중 히스토리를 확인하여 날짜를 선택하고 손쉽게 과거로 돌아가 그때부터 다시 commit을 치고 update를하면서 사용 할 수 있었지만 지금 사용하는 git은 그런방법으로 처리하는게 쉽지 않았고 처리 방법으론 과거 commit을 찾아서 해당 commit영역을 checkout 한 후 branch를 새롭게 만들어서 사용하는 방법을 채택하여 사용중에 있습니다.
이 과정을 겪으면서 branch에 대해 알아볼 필요성이 생겼고, 간단하게 branch의 사용법을 확인 후 처리했던 방법을 포스팅 해보고자 합니다.
GIT - branch
branch만들기
git branch <name>
"git branch 브랜치명"를 통해 브랜치 생성할 수 있습니다.
branch 목록 확인하기
git branch
"git branch"를 통해 브랜치 리스트를 확인 할 수 있습니다.
사용하는 branch 변경하기
git checkout <branch>
"git checkout 브랜치명"을 통해 사용할 브랜치를 바꿀 수 있습니다.
새 브랜치에 소스 올리기
브랜치를 새로 만들어서 변경까지 했다는건 이 부분부터 새로운 소스로 개발을 진행하겠다는 뜻이겠죠?
여기서 소스를 약간 수정하고 add 후 commit을 해서 push까지 진행해보겠습니다.
저는 index.html만 약간의 수정을 했습니다.
아래 명령을 통해 전부 add해주시고 commit 메시지를 남깁니다.
git add .
git commit -m "브랜치 변경"
push도 진행합니다.
git push origin psw
이번엔 변경된 브랜치명인 psw로 올립니다. (master -> psw)
전 저장소를 연결할 때, origin으로 만들었습니다.
정상적으로 변경된 branch로 올라간 모습을 확인 할 수 있습니다.
fork라는 툴을 활용해서 git을 사용하고 있는데 아무래도 gui를 제공하다보니 commit 메시지도 보기 좋고 현재의 브랜치상태나 올린사람등을 쉽게 파악할 수 있어 애용하고 있는 프로그램입니다.
이렇게 새로운 브랜치를 만들어서 추가된 것을 볼 수 있습니다.
브랜치 병합하기(merge)
git merge <commit>
병합을 할 땐, "git merge 브랜치명"의 명령어를 통해 merge합니다.
git checkout master
지금까지 따라오셨다면 commit의 헤드는 psw에 처리되어 있을텐데, 다시 master로 변경해보겠습니다.