본문 바로가기

수업 & 공부/개발환경 만들기

43- Git-branch & Merge


Git - Branch 를 왜 사용할까?

board 수정하다 comment수정하다 보면 history에서 여러가지 파일들이 섞여있는 것을 볼 수 있다.

그렇다면 텍스트(파일)들의 변화를 어떻게 관리할까?

 

 

git - branch를 연습해보자

1. C\gitpractice\ 파일 안에 git파일을 생성하고 sourcetree에 추가해서 환경을 만들었다.

   그리고 source.txt 파일을 생성 후 commit하였다.


2. 우선 master 상태에서 branch를 생성하여 commit을 따로 해보자. 가지(make-branch)를 생성하고 

  make-branch 가지가 선택된 상태에서 새로운 파일 makebranch.txt 파일을 아까의 위치에 추가하여 commit을 했다.

 

 

3. 아래 사진과 같이 branch가 둘로 나뉜 것을 볼 수 있다. 이제 병합하는 방법을 할 차례이다


병합(MERGE) 은 언제 할까?

branch의 기능이 완성이 되면 소스와 소스를 합치는 과정을 해야한다. 위 사진을 참고하자
Merge를 할때 가장 중요한 원칙은 : '어느 브랜치'를 기준으로 '어느 브랜치'를 가져올것이냐.
master기준으로 make-branch에 있는 내용을 가지고 오고싶다 하면?

master가 선택된 상태에서 병합 버튼을 클릭하자. 아래의 창이 뜰 것이다.

병합하고자 하는 브랜치를 클릭하고 확인 버튼을 누르면 병합 성공!

 

 

충돌 병합

 


만약 다음과 같은 경고문이 나온다면 이유는 뭘까? 
닫기를 누르면 원인표시가 느낌표와 함께 파일명이 나온다


<<<<HEAD                                 master의 내용 시작
====                                        master 끝 & listInJson 시작

>>>>listInJson(병합하려는 파일)      listInJson 끝


위와같이 코드가 둘로 나뉘는데 둘 중 하나를 선택해서 충돌을 해결해야한다.
코드를 수정하고 다시 스테이지에 올리면 > 원인표시가 사라지고 오류 해결에 대한 commit 내용이 만들어진다!