본문 바로가기
개발 도구들 (IDE)/Git 깃허브

깃허브 GITHUB 빠르게 핵심만 사용해보기 4 (branch 병합 merge, 삭제하기)

by 지구인한군 2021. 6. 4.
지난 시간에는 branch(브랜치)의 개념과 생성 그리고 이동(변경) 후에 코드를 push까지 해보았습니다.

 

[개발 도구들 (IDE)/GitHub 깃허브] - 깃허브 GITHUB 빠르게 핵심만 사용해보기 3 (branch, checkout)

 


 그럼 지난 글에 이어 오늘은 브랜치의 병합(합치기) 기능과 불필요한 브랜치를 삭제하는 방법을 배워보겠습니다. 혹여 브랜치 개념을 잘 모르시거나 branch, checkout 명령어를 모르시는 분은 위에 있는 링크를 꼭 확인해보시고, '나는 GIT깃도 잘 모르겠고! 깃허브도 잘 모르겠고! 그거 먹는 건가?' 하시는 분들은 아래 링크부터 체크해보시길 바랍니다~ ㅎㅎ

 

 

깃허브 GITHUB 빠르게 핵심만 사용해보기 (KING초보만 눌러주셔요)

 이제는 이미 필수가 돼버린 깃허브... 이론 따위는 어려우니 서버 코드 저장소 개념 정도로 빠르게 사용해보겠습니다. 다만 git과 github는 구별해야 하며 git은 리눅스 창시자인 리누스 토르발스

jiguin-hankun.tistory.com

1. 브랜치 병합 

특별한 문제가 없다면(?) 생각보다 쉽게 끝날 수 있으니, 방법보다 개념을 이해해주시는 게 좋습니다. 

 

 먼저 CMD 프롬프트 창이나 터미널 창 여시고 지난 실습에 했던 github-love 폴더로 이동합니다. 다음에 현재 브랜치 상태를 확인하기 위에 아래 화면처럼 git branch -a 명령어를 입력합니다.

 

현재 브랜치 상태

 

지난 시간에 만들었던 sub 브랜치와 checkout 명령어로 * sub 브랜치로 이동했던 상태임을 확인할 수 있습니다. README.md 파일에 "sub 브랜치에서 작성한 내용"이라고 추가한 다음, 깃허브에 반영을 했었습니다.

 

현재 깃허브 상태

 

정리하면 sub 브랜치에는 수정된 README.md 파일이 반영된 상태인데 main 브랜치에는 반영이 안 된 상태입니다. 그래서 바뀐 sub 브랜치 내용을 main 브랜치에 전부 덮어 씌우는(병합) 작업을 진행하겠습니다. 여기서 중요한 포인트는 sub → main으로 병합이기 때문에 sub 브랜치가 아닌, main 브랜치로 이동 후에 병합(merge)을 진행해야 합니다.

 

브랜치 이동 후 병합

 

git checkout main 명령어로 브랜치 변경 후에 git merge sub 명령어로 병합을 진행했습니다. 요약하면 변경을 하고 싶은 브랜치 이동 → 덮어 씌울 브랜치 지정입니다. 여기까지는 로컬 환경에서 변경한 것 이기 때문에 꼭 최종적으로 git push 명령어로 서버(깃허브)에 반영을 해야 되는 부분 잊지 말아 주세요~ 그럼 마지막으로 깃허브 화면 체크 ㄱㄱ

 

깃허브 main 브랜치

 

깃허브 코드 페이지에서 main 브랜치를 선택하면 기존에는 없던 README.md파일의 "sub 브랜치에서 작성한 내용"을 확인할 수 있습니다. 왼쪽의 코드 수정 반영 시간을 보시면 2 months ago라고 나와있는데, 이것이 바로 main 브랜치에서 수정 후 반영한 것이 아니라, sub 브랜치를 병합했기 때문에 sub 브랜치 기준으로 반영 시간이 나와있는 것입니다.

 

2. 브랜치 삭제

브랜치를 삭제하는 방법은 생성만큼이나 쉽습니다. 하지만 언제나 삭제 관련 기능은 신중하게 해야겠죠~!

 

 삭제는 아래 화면처럼 git branch -d sub 명령어를 입력하면 sub 브랜치가 삭제됩니다. 참 쉽죠?

 

sub 브랜치 삭제

 

하지만! 언제나 그렇듯이 이건 로컬에 반영된 것이고 아직 서버(remotes) 환경에는 반영이 되지 않았습니다. 위에 화면에 아직 remotes/origin/sub가 있는 것을 확인할 수 있습니다. 그럼 리모트 환경인 깃허브 서버에 반영해 볼까요~

 

깃허브 서버에 반영

 

git push origin :sub 명령어로 반영이 가능합니다. 여기서 주의할 점은 위의 화면 첫 번째 줄처럼 콜론(:)이 빠지며 에러가 나면서 작동하지 않습니다. 그러니 꼭 콜론을 붙여주시고, 로컬에서 브랜치 삭제 후 서버에 반영하면 다시 복구하기가 힘드니, 반영전에 다시 한번 확인해보는 습관을 들이면 좋습니다. main이나 master 브랜치가 있어서 다행...

 

깃허브에서 브랜치 삭제 확인

 

마지막으로 깃허브에서 확인해 보면 sub 브랜치가 삭제되고 main 브랜치 하나만 남아있는 것을 볼 수 있습니다.

 


 지금까지 총 4번에 걸쳐 Git 또는 깃허브를 간단하게라도 사용할 수 있는 방법을 올렸습니다. 이미 개발자에게는 선택이 아닌 필수가 돼 버린 상황이지만, 개인적인 의견으로는 너무 깊게 파고들면 오히려 독이 될 수 있으니 그 시간에 개발을 더... 필요한 기능이 생겼을 때 하나하나 알아가는 것이 더 좋을 듯합니다. 그럼 저도 앞으로 Git은 필요할 때만 포스팅ㅋ

 

댓글