git merge 안전하게 하기
현재 작업중인 브랜치를 머지하기에 앞서 조금 안전하게 머지하는 방법에 대해 알아보자.
현재 브랜치에서 하던 작업을 마무리 했으면
(작업중인 브랜치) git add, git commit을 한 후 로컬 main 브랜치로 넘어간다 (commit을 하지 않으면 브랜치간 이동이 되지 않는다. 물론 git stash를 사용하면 작업중이던 파일을 임시로 저장해두고 다른 브랜치로 넘어갈 수 있긴 하다)
그 후 (로컬 메인 브랜치) git pull origin main을 통해 remote git에 저장되어 있는 최신 파일을 받아온다.
그리고서 (작업중인 브랜치)로 다시 넘어가 git pull origin main을 통해 원격 main 브랜치와 파일을 맞춘다. 여기서 conflict가 날 수도 있는데 이렇게 해주는 이유는 병합하면서 confilct를 해결하게되면 실수가 발생했을 때 바로 메인에 머지되지만 브랜치로 메인을 받아와서 conflict 처리를 해준 뒤에 병합하게 되면 실수를 하더라도 바로 main에 병합되지 않고 내 브랜치에서만 실수한 파일이 존재할 수 있기 때문이다.
따라서 (작업중인 브랜치) 에서 confilct와 병합을 모두 마치면 git add, git commit, git push origin (작업중인 브랜치)를 통해 내 리모트 브랜치에 작업중인 파일을 올리고 github 홈페이지에서 git pull request를 통해 병합을 마무리하면 된다.
'git' 카테고리의 다른 글
[Git] gitignore이 안 된 채로 github에 올린 경우 (1) | 2024.01.06 |
---|