Search
🎑

로컬브랜치에서 충돌잡고 PR하기

대략적인 순서도

로컬 브랜치 생성 (ex01) 클라우드에 있는 메인 브랜치 Pull받기 로컬에서 Merge 클라우드로 push한다. 팀장한테 PR요청한다. Mege 완료

로컬 브랜치 생성 (ex01)

git checkout -b 브랜치이름
Java
복사
해당 명령어로 로컬 브랜치를 생성한다.
자신의 기능을 구현후 commit 한다.

클라우드에 있는 메인 브랜치 Pull받기

git checkout main (main인 사람도 있고 master인 사람도 있음)
Java
복사
일단 먼저 로컬에서 Main 브랜치로 이동한다. (매우중요!!!)
현재 내 위치가 main 브랜치인 걸 확인 꼭 해줘야 된다.
git pull oirgin main
Java
복사
현재 main브랜치 상태에서 클라우드에 있는 main브랜치를 pull 받는다.

로컬에서 Merge

git checkout ex01
Java
복사
다시 개인 브랜치로 이동한다.
git merge main
Java
복사
현재 내 위치가 개인 브랜치 ex01 인 거 확인하고 main브랜치랑 merge 한다.
merge라는 것은 저기에 있는 브랜치가 내 현재위치 브랜치로 다가와서 합쳐지는 개념

[ Merge시 충돌해결하기 ]

만약에 merge하는데 충돌이 나는 경우가 있는데 그러면 이런식으로 conflict라는 단어와 브랜치 이름이 있는 곳에서 MERGING이라고 뜨면서, 아직 merge가 진행중이라는 상태를 표시한다.
shift 를 3번 연속으로 누르면 이렇게 검색창이 뜬다. 검색창에 충돌날 때 항상 표시가 되는 표식을 검색 한다. ====== 그럼 해당부분을 클릭해서 확인해본다.
===== 을 기점으로 ==== 에서 부터 HEAD 까지 영역은 내가 수정한 코드이고 ===== 에서부터 main 까지 는 메인 브랜치가 가지고 있던 코드이다.
잘 검토해보고 본인이 수정한 코드가 적용이 되어야 되면 ===== 에서부터 main 까지 영역을 삭제하고 <<<<<< HEAD 라인도 삭제를 해야된다.
요렇게 깔끔하게 내가 수정한 코드만 남기면된다.

[ 충돌 해결한 후 ]

git add . git commit -m "충돌해결"
Java
복사
충돌을 다 해결했다면 ( 브랜치 | MERGING ) 의 상태에서 add 하고 commit 한다.
모든 충돌부분을 해결하고 커밋을 하면 이런식으로 정상적으로 MERGE가 종료가 된다.

클라우드로 push한다.

MERGE가 완료가 되면 현재 브랜치 위치에서 push해서 cloud에 ex01이라는 브랜치롤 등록한다.

팀장한테 PR요청한다.

나의 로컬 브랜치를 Push하면 클라우드에 현재 사진의 파랑색 브랜치처럼 등록이 되고, 여기서 팀장한테 평소처럼 PR요청하면 된다.

Mege 완료

그럼 이렇게 클라우드의 Main브랜치가 정상적으로 Update 되었다.