본문 바로가기
IT/SourceTree

[SourceTree] - 소스트리(SourceTree)에서 브랜치(branch)간에 머지(Merge) 하는 방법

by 차이나는 개발자 2023. 7. 30.
728x90
반응형

#깃(Git) 머지(Merge)란?

깃(Git)에서 머지(merge)란, 브랜치(branch)에서 작업한 변경 내용을 다른 브랜치나 메인 브랜치(main branch)에 반영하는 작업입니다. 머지를 통해, 여러 개발자들이 동시에 작업한 내용을 통합하여 하나의 코드로 만들 수 있습니다.

머지를 수행할 때는, 머지를 받을 브랜치에서 "git merge" 명령어를 사용합니다. 이 명령어는, 현재 브랜치와 머지를 받을 브랜치의 변경 내용을 비교하여, 자동으로 변경 내용을 통합합니다. 머지를 수행할 때는, 변경 내용이 충돌할 수 있는 부분을 수동으로 해결해야 할 수도 있습니다.

머지를 통해 변경 내용을 통합하면, 모든 브랜치에서 동일한 코드가 적용되므로, 코드의 일관성과 안정성을 유지할 수 있습니다. 또한, 머지를 수행하기 전에 변경 내용을 검토하여 문제가 없는 경우에만 머지를 수행하면, 코드의 품질을 높일 수 있습니다.

 

 

#깃(Git) 머지 충돌(merge conflict)란?

깃(Git)에서 머지(merge)를 수행할 때, 때로는 머지 충돌(merge conflict)이 발생할 수 있습니다. 이는 두 개 이상의 브랜치에서 동일한 파일의 동일한 부분을 수정한 경우에 발생합니다.

머지 충돌이 발생하면, 깃은 충돌이 발생한 부분을 자동으로 해결할 수 없으며, 수동으로 충돌을 해결해야 합니다. 충돌이 발생한 파일을 열어 충돌 부분을 확인하고, 원하는 변경 내용을 선택하여 충돌을 해결합니다.

충돌을 해결한 후에는, 충돌이 발생한 파일을 스테이지에 추가하고(commit) 머지를 완료할 수 있습니다. 이후에는 머지된 코드가 모든 브랜치에 적용되며, 충돌이 해결된 상태로 코드가 통합됩니다.

머지 충돌은 협업하는 과정에서 종종 발생할 수 있으며, 충돌을 해결하는 것은 중요한 개발자의 역량 중 하나입니다. 충돌을 신속하고 정확하게 해결하기 위해서는 충돌이 발생하지 않도록 주의하고, 코드 변경 내용을 잘 관리하는 것이 좋습니다.

 

 

#브랜치(branch) 간에 머지(Merge) 하는 방법

1. newBranch에서 새로운 파일을 생성하고 newBranch에만 commit -> push를 진행합니다.

 

 

 

2. 현재 newBranch_새파일생성 파일은 newBranch에만 push 되어있는 상태입니다.

 

 

3. 이제 newBranch에 새로 생성된 파일을 main 브랜치에 머지 작업을 진행 해보겠습니다.

-main 브랜치를 더블클릭해서 브랜치 체크아웃을 합니다.

-newBranch에서 commit -> push 했던 새브랜치 파일 테스트는 보이지 않는 것을 확인하실 수 있습니다.

 

 

4. newBranch를 마우스 우클릭 후 현재 브랜치로(main이 체크아웃되어 있는 상태, 굵은 글씨) newBranch 병합을 클릭합니다.

 

 

5. 한번 더 머지를 진행할 것인지 물어보는 팝업창이 뜹니다. 확인 버튼을 클릭합니다.

 

 

6. Push 버튼에 1이라는 숫자가 표시된 것을 확인하실 수 있습니다.

newBranch에서 추가한 커밋을 main 브랜치에도 적용한다는 의미입니다.
Push 버튼을 클릭합니다.

 

 

7. main 브랜치에 push 작업을 진행합니다.

 

 

8. main 브랜치에도 newBranch에서 생성한 커밋이 적용된 것을 확인하실 수 있습니다.

 

 

 

728x90
반응형

댓글