git branch 생성
git branch 브랜치이름
git checkout 브랜치명
내가 보고있는 브랜치를 변경한다.
git checkout main 을 입력하면 main 브랜치로 가게 되고
git checkout 연습브랜치 를 입력하면 연습브랜치로 가게 된다.
git log --graph --oneline --all (현재 브랜치 커밋 상황을 그림으로 보기)
git merge (branch 합치기)
브랜치에서 수정한 코드를 다시 main 브랜치로 옮기고 싶다면
git merge 명령어를 이용하면 된다.
git checkout 메인브랜치(디폴트로 사용하는 브랜치)
git merge 합칠브랜치명
이 때 주의사항은...
- 먼저 default 브랜치(별도의 설정이 없다면 main 브랜치 또는 master 브랜치)로 접속한다.
- 'git merge 합칠브랜치명' 을 터미널에 입력한다.
- 합쳐진다.
먼저 디폴트인 메인 브랜치로 이동을 한 뒤
git merge 합칠브랜치 명을 입력한다.
merge conflict 주의사항
메인 브랜치와 합칠 브랜치에서
같은 파일의 같은 줄을 수정할 경우 merge conflict가 발생한다.
이는 두 브랜치가 충돌이 일어났다고 말 해주는 것이며
사용자가 직접 충돌을 해결해주어야 한다.
아래는 충돌상황을 직접 만들어 본 뒤 에러메세지를 확인한 것이다.
에러메시지에서는 친절하게 설명해준다.
- aa.txt에서 Merge conflict가 나왔다.
- 자동 머지가 실패했고, conflict를 수정한 뒤 결과를 커밋해라.
일단 main으로 merge가 확실히 안된 상태이다. 따라서 진행상태가 main|MERGING에 있게 된다.
문제의 aa.txt 파일을 열어보면 아래와 같이 되어 있는데
<<<<<< HEAD나
>>>>>> 연습 같은 것들 다 지워주고
남길것들만 남긴 뒤
git add 파일명, git commit -m 메시지
를 입력해주면
오류가 해결되며 merge가 성공적으로 이루어진다.
아래의 스샷은 위 충돌을 해결한 상태의 CLI와 변경한 파일을 보여준다.
요약정리
- 브랜치 생성 : git branch 브랜치명
- 브랜치 이동 : git checkout 브랜치명 / git switch 브랜치명
- 브랜치 합치기 : main 브랜치로 이동 후 git merge 브랜치명
- commit 내역 그래프로 확인하기 : git log --graph --oneline --all
- merge시 conflict 해결하기 : 파일열어서 수정하고 git add, git commit 하기
'했던것들 > git' 카테고리의 다른 글
git branch 목록 확인 및 브랜치 삭제 (0) | 2022.12.02 |
---|---|
git merge 동작 방식 (fast forward merge) (0) | 2022.12.01 |
git merge 동작 방식 (3-way merge) (0) | 2022.12.01 |
git 명령어 (init, add, commit, restore, log) (0) | 2022.12.01 |
git 환경설정(config) 기초 명령어 (0) | 2022.12.01 |