Branch And Conflict

Gata·2024년 6월 4일

😺Git & Github

목록 보기
2/8

Branch


브랜치는 master(또는 main)으로부터 시작되고, 각 브랜치들끼리는 서로 영향을 받지 않는다.
Main의 끝 점이 브랜치의 시작점이라고 볼 수 있다.

master

New Branch를 누른 후, master에서 새로운 Branch out을 할 수 있다.

Happy-ending이라는 새 브랜치를 만든다.
Happy-ending에는 기존의 master에서 작업했던 내용들이 있고, 해피엔딩과 어울리는 내용을 써준다. 그리고 커밋해준다.

다시 master으로 가서 Sad-ending 브랜치를 만든다.
Sad-ending에도 기존의 master에서 작업했던 내용들이 있고, 새드엔딩과 어울리는 내용을 써준다.
마찬가지로 커밋해준다.

master, Happy-ending, Sad-ending 브랜치를 이동할 때 마다, vs code에서 보이는 내용이 실시간으로 달라짐을 확인할 수 있다.

master, Happing-ending과 Sad-ending을 각각 업데이트 해준다.

master

Happing-ending

Sad-ending

Merge into current branch

기준이 되는 master branch에 happy ending을 merge하고 싶을 때는 Merge into current branch를 이용한다.

시작은 master에서 한다.

가져오고 싶은 브랜치를 선택한다.

같은 줄을 수정했으면 Conflict(충돌)이 발생 할 텐데, 이때 수동으로 어떤 코드를 최종적으로 남길 것인지 선택할 수 있다.


master 코드, 혹은 Happy-ending 코드만 선택 할 것인지, 아니면 둘다 선택 할 것인지 고를 수 있다.

merge된 master 최종 내용

Update from default branch

master를 계속 업데이트 해나감에 따라, happy나 sad 브랜치에도 master의 내용을 업데이트하고 싶을 때, Update from default branch를 이용한다.

예를 들어, Happy-ending 브랜치에 master의 내용을 업데이트 한다고 가정해보자.

기준이 되는 브랜치는 Happy-ending이다.

Current Branch를 Happy-ending으로 설정해두고, Master의 내용을 업데이트 할 때 사용한다.

profile
개발은 즐거워🪇

0개의 댓글