티스토리 뷰

개발../Git

Git Conflict

링재호 2022. 3. 24. 18:48

GIt Conflict

깃을 이용하여 협업시 마스터에서 여러 개의 브랜치를 따서 동시에 같은 내용을 작업할시 수정된 내용으로 인해 맞지 않는 경우, 충돌이 발생할 수 있습니다.

예를 들어, index.js 라는 파일에서 두 개의 브랜치를 따서 작업을 진행합니다. 그러다가 먼저 작업이 끝난 브랜치의 소스가 반영됩니다. 그 이후에 이제 늦게 끝난 브랜치를 반영할려고 하면, confict 에러가 나오는 것을 확인할 수 있습니다.

conflict 해결방법

이럴 때 간단하게 해결할 수 있는 방법이 2개정도 있습니다.

첫번째는 마스터의 최신 내용을 내려 받은 후, 해당 브랜치로 머지시킨 뒤 진행하는 방법이 있습니다. 이 방법의 경우, 쉽게 Conflict 를 해결할 수 있지만, 그만큼 기록이 남게 됩니다.

두번째는 내용이 변경되기 전으로 돌아가 변경된 내용을 rebase 친 뒤, 변경된 내용을 적용하고 마스터로 돌아와 머지하는 방법이 있습니다. 하지만, 이러한 방식은 실수할 수도 있는 방식이기 때문에 조심하셔야 합니다.

둘 중 편한 방법을 사용하면 되는데, 실제로 봤을 때나 경험상으로는 rebase 보다 merge 를 이용한 방법을 좀 더 많이 선호하는 것 같습니다.

웹, 툴을 이용하는 방법

github, gitlab, git 관련된 툴을 사용할시에는 resolve conflicts 라는 기능을 사용하여 눈으로 편하게 보면서 수정할 일부분만 바꿀 수 있습니다. 편하라고 만들어둔 기능이기 때문에 우리는 이러한 기능을 잘 이용하여 conflict 를 해결해보자...

'개발.. > Git' 카테고리의 다른 글

Git Flow  (0) 2023.09.04
Gitlab - 이슈 템플릿  (0) 2022.06.21
Git Stash  (0) 2022.03.18
.gitignore  (0) 2021.10.02
Fork 다운  (0) 2021.09.05
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
글 보관함