프로그래밍 관련 도구/Git

Git(branch_merge_conflict 정리)

benjykim 2017. 8. 4. 12:54
반응형

* 병합(merge)할 때 충돌(conflict)이 일어나는 경우


1) index.html 파일을 만들어서 "function a() {}' 내용을 입력한다. 

   (master branch)


* cat index.html 결과



-> git add와 commit을 진행.





2) iss1 브랜치(branch)를 만들어서 이동한다.


* git branch iss1

* git checkout iss1





3) index.html 파일을 수정한다. ( iss1 branch )



-> git add와 commit을 진행.



4) master 브랜치로 이동하여 index.html의 내용에 function c() {}"를 추가한다.

   (master branch) 



-> git add와 commit을 진행.



* master 브랜치의 index.html의 내용과 iss1 브랜치의 index.html 내용 비교


* master branch :        |       * iss1 branch : 





5) git merge iss1 ( iss1 브랜치의 내용을 master 브랜치로 병합한다. )


-> conflict 오류 발생






6) conflict 내용 확인



'<<<<<<< HEAD' 부터 '=======' 사이의 구간이 현재 체크 아웃된 파일의 내용이고

 '=======' 부터 '>>>>>>> exp' 구간이 병합하려는 대상인 iss1 브랜치의 코드 내용이다.  


 -> 이 정보를 참고로해서 두개의 코드를 병합한 후에 특수기호들을 제거하면 된다.




7) 작업이 끝나면 파일을 저장한 뒤 commit


-> Conflict 내용을 확인할 수 있음.










*이 포스트는 이고잉님의 '지옥에서 온 Git'강의를 참고하여 작성했습니다.

URL : https://opentutorials.org/course/2708

반응형

'프로그래밍 관련 도구 > Git' 카테고리의 다른 글

Git(branch의 원리)  (0) 2017.08.10
Git(stash 정리)  (0) 2017.08.09
Git(branch_merge 정리)  (0) 2017.08.03
Git(branch_log,diff 정리)  (0) 2017.08.02
Git(branch 정리)  (0) 2017.08.02