
feat. 얄코 - 얄코님의 강의와 참고자료 활용
두 브랜치를 한 커밋에 이어 붙임.
브랜치를 다른 브랜치에 이어 붙임.
✏️ add-coach 브랜치를 master 브랜치로 merge
master 브랜치로 이동git merge add-coach
💡 master 에서 한 내용과 add-coach 에서 한 내용이 master가 모두 가지게 됨.
merge는 하나의 새로운 커밋이므로reset으로 되돌리는 것이 가능하다.
add-coach 브랜치 삭제 git branch -d add-coach
✏️ new-teams 브랜치를 master 브랜치로 rebase
new-teams 브랜치로 이동merge 에서는 master에서 했지만 rebase 반대로 new-teams에서 git rebase master
new-teams 에서의 작업 내용이 master 이후로 이어 붙여짐 (master 내용이 중간에 삽입됨)
master 브랜치는 뒤쳐져 있는 상황master 브랜치로 이동 후 new-teams의 시점과 맞추어줌. git merge new-teams
new-teams 브랜치 삭제
1. conflict-1, conflict-2 브랜치 생성
git branch conflict-1
git branch conflict-2
2. master 브랜치
manager를 Kenneth로 변경coach를 Nicholas로 변경coach를 Shirley로 변경Edit Tigers, Leopards, Panthers3. conflict-1 브랜치
manager를 Deborah로 변경Edit Tigers4. conflict-2 브랜치 1차
coach를 Melissa로 변경Edit Leopards5. conflict-2 브랜치 2차
coach를 Raymond로 변경Edit Panthers
master 브랜치로 이동
git merge conflict-1 병합 시도 시 충돌 발생

충돌 발생시 VSCode에서 어떤 것으로 할 것인지 선택할 수 있게 된다.
Accept Incoming Change 선택 (conflict-1 브랜치의 내용 선택)
💡 위 처럼 충돌이 한 개가 아니라 여러개 이거나 당장 충돌 해결이 어려울 경우 아래 명령어로
merge중단
git merge --abort
해결이 가능하면 충돌하는 부분을 수정하고 git add . 후 git commit 으로 병합 완료
merge를 중단 하지 않는 한 커밋 메시지를 따로 입력하지 않고git commit을 하게 되면 자동으로 병합 커밋 메시지가 써져있고 커밋이 완료 된다.![]()
![]()
conflict-2 브랜치로 이동
conflict-2 에서 git rebase master로 rebase 시도 시 충돌 발생
💡
merge는 conflict 해결을 한 번에 모든 커밋에 대해 수행할 수 있지만,
rebase는 커밋마다 따로따로 conflict를 해결해주어야 한다.
git status 확인하기
rebase 중단 git rebase --abort해결 가능시
git add .git rebase --continue충돌을 모두 해결할때까지 계속 반복
rebase 했지만, 두 번째 충돌해결에서 master 브랜치의 내용을 선택 했으므로 커밋으로 추가할 필요없이 한 개만 추가 된 모습git switch master로 이동 후 git merge conflict-2를 해주면 최신화가 된다.
사용하지 않는 브랜치 제거 (conflict-1 conflict-2)
