브랜치란 독립적으로 어떤 작업을 진행하기 위한 개념
브랜치 명령어(CLI)
// 새로운 브랜치 생성
git branch 브랜치 이름
// 브랜치 목록 확인
git branch
// 브랜치 목록과 각 브랜치의 최근 커밋을 확인
git branch -v
// 브랜치 전환
git switch 브랜치 이름
git checkout 브랜치 이름
// 새로운 브랜치 생성 후 해당 브랜치로 전환
git swtich -c 새로운 브랜치 이름
git checkout -b 새로운 브랜치 이름
git checkout -b freshman // freshman이라는 브랜치를 생성하고 해당 브랜치로 변환
// 브랜치 삭제
git branch -d
git branch -D (병합하지 않은 브랜치를 강제 삭제)
// 원격 브랜치 삭제
git push <원격저장소_이름(보통 origin)> --delete <branch_name>
// 브랜치 병합
git checkout master // master 브랜치로 이동
git merger dev // master 브랜치에 dev 브랜치를 병합
// 커밋의 베이스를 다시 정하고 싶은 경우(되도록이면 쓰지 않음, 커밋 이력 보존을 위해)
git rebase
// 병합을 취소하고 이전 커밋으로 되돌아감
git reset --hard 커밋 넘버
// 로그에 모든 브랜치를 그래프로 표현
git log --branches --graph --decorate
// 아직 commit 하지 않은 작업을 스택에 임시로 저장
git stash
// 여러 개의 커밋 로그를 하나로 묶고 싶은 경우
git squash
// 커밋 여러 개의 변경 사항을 취소하고 싶은 경우
git revert
// 최근 커밋 메시지를 수정하고 싶은 경우
git commit --amend