

git branch -d 브랜치이름:병합이 완료된 브랜치 삭제시git branch -D 브랜치이름: 병합하지 않은 브랜치 삭제시
rebase는 브랜치의 시작점을 다른 commit으로 옮겨주는 행위
rebase를 이용해서 신규브랜치의 시작점을 main 브랜치 최근 commit으로 옮긴 다음 fast-forward merge하는 것
💡 결과는 squash and merge와 비슷한데 합쳐질 브랜치의 commit 내역이 전부 보존
단점: 브랜치끼리 차이가 너무 많은 경우 rebase하면 충돌이 많이 발생할 수 있음
git switch 새로운브랜치: 새로운 브랜치로 먼저 이동
git rebase main: main에 rebase해주기
git switch main: main 브랜치로 이동
git merge 새로운브랜치: 새로운 브랜치를 merge 시켜주기

새 브랜치에 있던 코드 변경 사항들이 main 브랜치로 텔레포트
💡 합쳐질 브랜치의 commit 내역을 하나로 합쳐서 main 브랜치에 신규 commit을 생성
main 브랜치의 git log 출력해볼 때 merge 완료된 브랜치의 commit 같은 것들은 출력되지 않음
git switch main: main 브랜치로 이동
git merge --squash 브랜치명: squash 이용하여 merge
git commit -m '메세지': 하나의 commit으로 main 브랜치에 생성