자기개발/검색한 자료 정리

Git에서 브랜치, 병합, 충돌 해결하기

실버블렛 2023. 4. 20. 11:30
반응형

요약: 이 글에서는 Git을 사용하여 브랜치를 생성, 관리하고 병합하는 방법을 소개합니다. 또한, 병합 과정에서 발생하는 충돌을 해결하는 방법에 대해서도 설명합니다. 개발자들이 일하다가 모르는 것이 있다면 이 글을 참고하여 Git 브랜치와 병합 관리에 대한 이해를 높일 수 있습니다.

브랜치 생성 및 관리

Git의 브랜치 기능을 사용하면 동시에 여러 기능을 개발하거나 버그를 수정하는 데 유용합니다. 브랜치를 생성하려면 다음과 같이 git branch 명령어를 사용합니다.

git branch new-feature


새로운 브랜치를 생성한 후에는 git checkout 명령어를 사용하여 해당 브랜치로 전환할 수 있습니다.

git checkout new-feature

병합하기

브랜치에서 작업이 완료되면 git merge 명령어를 사용하여 다른 브랜치와 병합할 수 있습니다. 먼저, 병합할 기준이 되는 브랜치로 전환한 후에 git merge 명령어를 사용합니다.

git checkout main
git merge new-feature

충돌 해결하기

병합 과정에서 동일한 파일의 동일한 부분이 변경된 경우, Git은 자동으로 병합하지 않고 충돌(conflict)이 발생합니다. 이때는 개발자가 수동으로 충돌을 해결해야 합니다.

충돌이 발생한 파일을 열어보면, 충돌 구간이 다음과 같이 표시됩니다.

<<<<<<< HEAD
This is the main branch content.
=======
This is the new-feature branch content.
>>>>>>> new-feature

위 예시에서 ======= 기호를 기준으로 위쪽은 main 브랜치의 내용이고, 아래쪽은 new-feature 브랜치의 내용입니다. 이제 개발자는 두 브랜치의 내용 중 하나를 선택하거나 새로운 내용으로 변경하여 충돌을 해결할 수 있습니다.

충돌이 해결된 후에는 다음과 같이 변경 사항을 커밋하고 병합을 완료할 수 있습니다.

git add file-with-conflict.txt
git commit -m "Resolve merge conflict"


이제 Git 브랜치 생성, 관리, 병합 및 충돌 해결 방법에 대해 알게 되었습니다. 개발자들이 일하다가 모르는 것이 있다면 이 글을 참고하여 더 효율적으로 Git을 사용할 수 있습니다. 또한, 다음과 같은 명령어와 기능도 알아두면 도움이 됩니다.

브랜치 목록 확인하기

git branch 명령어를 사용하면 현재 저장소의 브랜치 목록을 확인할 수 있습니다. 현재 활성화된 브랜치는 별표(*)로 표시됩니다.

git branch

브랜치 삭제하기

작업이 완료된 브랜치를 삭제하려면 git branch -d 또는 git branch -D 명령어를 사용합니다. -d 옵션은 병합이 완료된 브랜치만 삭제할 수 있으며, -D 옵션은 병합 여부와 상관없이 브랜치를 삭제할 수 있습니다.

git branch -d new-feature

원격 브랜치와 동기화하기

원격 저장소에 있는 브랜치를 로컬 저장소와 동기화하려면 git fetch 명령어를 사용합니다.

git fetch origin


git fetch 명령어를 실행한 후에는 git merge 명령어를 사용하여 원격 브랜치와 로컬 브랜치를 병합할 수 있습니다.

git merge origin/main


원격 저장소에 브랜치를 푸시하려면 git push 명령어를 사용합니다.

git push origin new-feature


이렇게 Git에서 브랜치를 생성하고 관리하는 방법, 병합하는 방법, 충돌을 해결하는 방법을 배웠습니다. 이러한 기능들을 활용하면 개발 과정에서 팀원 간 협업이 더욱 원활하게 이루어질 것입니다.

반응형