Git

[Git] TIL #2

Gaeun Lee 2022. 7. 7. 02:03

Branch

branch는 독립적인 작업을 진행하기 위한 다른 차원이라 말할 수 있다 

 

기본 명령어

git branch 브랜치명 branch 생성

git branch branch 목록 확인

git switch 브랜치명 branch 이동

git switch -c 브랜치명 branch 생성과 이동

git branch -d 브랜치명 branch 삭제

git branch -m branchA branchB 브랜치명을 branchA에서 branchB로 바꿈

git log --all --decorate --oneline --graph 여러 브랜치 내역 보기 (Source Tree로 보는 게 편함)

 

 

Merge & Rebase

> merge

branchA의 작업 내역을 하나의 commit으로 만들어 branchB에 이어 붙임

가지로 갈라진 branchA의 작업 내역을 볼 수 있음

방법

  • git switch branchB branchB에 이어붙일 것이기 때문에 branchB로 브랜치 옮김
  • git merge branchA branchA를 branchB에 merge
  • git branch -d branchA 합쳐진 branchA 삭제 가능

merge는 하나의 commit이므로 reset 가능하다

 

 

> rebase

branchA를 다른 branchB에 이어 붙임

branchA의 작업 내역을 branchB로 옮겨 한 줄로 볼 수 있음

branch A의 작업 내역을 가지로 볼 수 없음

방법

  • git switch branchA rebase하려면 이어붙여지는 branch로 이동해줘야 한다
  • git rebase branchB brachB에 branchA를 rebase

 

 

merge와 rebase 그림으로 보기

before after은 rebase 전 후이다

rebase는 이어붙여지며 가지가 사라진다

merge는 합쳐져 한 commit으로 남으며 가지는 그대로 있다