3-way merge(일반적인 merge옵션)
fast-forward merge(마지막 새끼 브랜치의 이름을 main이라고 지칭함)
-> 브랜치끼리 섞을 내용이 없기 때문(자동으로 발동됨)
-> 그게 싫다면 git --no-ff 브랜치명
->강제로 3-way merge
git branch -d 브랜치명
** merge안 한 브랜치 삭제방법
gir branch -D 브랜치명
왜 사용할까?
3-way merge는 나중에 git log가 복잡해짐
-> 짧은 브랜치들은 rebase를 사용하면 깔끔해보임
-> 강제로 fast-forward 진행
단점
conflict 많이 발생
사용방법
1. git switch 새로운브랜치
새로운 브랜치로 이동
2. git rebase main
git rebase 중심브랜치명
3. git switch main
중심브랜치로 이동해서
4. git merge 새로운브랜치
git merge 새로운브랜치명
git merge --squash 새브랜치
를 추가해주면 가지쳐진 commit들을 삭제하고 main branch의 하나의 새로운 commit으로 새로 지정함
-> main브랜치의 로그에서 사이드 branch 내용 나오지 않음
사용방법
1. git switch main
2. git merge --squash 브랜치명
3. ```git commit -m "메세지"
3-way merge
squash & merge
fast-forward merge
rebase & merge