[Git&GitHub] git의 병합과 충돌

개발log·2024년 1월 8일
0

Git&GitHub

목록 보기
9/9
post-thumbnail

🔖 개념

병합
나누어진 브랜치를 하나의 항목으로 합치는 행위
충돌
같은 파일 내에서 같은 줄을 수정하거나 삭제 및 변경 후에 해당 대상을 하나로 합칠 때 충돌이 발생한다.

병합

1. fast-forward 기법
메인(master)브랜치, 그와 다른 브랜치가 있을 때,
메인 브랜치에는 수정사항이 없고, 다른 브랜치에 수정사항이 있다면 이를 main 브랜치로 합치는 행위

2. 3-way 기법
동시에 여러 브랜치에서 수정이 발생하고 그 결과물을 하나로 합칠 때,
수정사항을 합쳐서 다른 main을 만들어 합친다.

※ 병합 브랜치 명령어 : git merge 브랜치명
지금 위치한 브랜치를 중심으로 해당 브랜치와 병합을 진행

충돌

1. git rebase 뿌리가 존재하는 브랜치 명
base(브랜치가 뻗어나가기 시작하는 커밋)를 다시 설정한다.
뿌리를 바꿔주고 싶은 브랜치에서 작업한다.
※ rebase가 완료된 후에는 merge 하여 합쳐주는 것도 가능하다.

2. 충돌 시 방안
충돌 내용을 수정한 후 add하여 stage에 올려주고 git rebase --continue를 사용하여 rebase를 진행한다.

👏 커밋 정보 확인하기

--graph 옵션 : 그래프 모양으로 커밋 보여주기
--online 옵션 : 커밋ID와 메세지를 한 줄에 보여주기
-숫자 : 최근 해당 숫자만큼의 커밋 내용 보기

profile
나의 개발 저장소

0개의 댓글