Written by coh at home

git 차원 넘나들기 본문

Etc/git

git 차원 넘나들기

och 2022. 6. 15. 16:53

git branch (branch name)

브랜치를 생성! 

 

git branch

현재 브랜치 위치와 만들어진 브랜치 확인

 

git branch -d (브랜치명)

branch 삭제. 만약 commit 되지 않은 branch 삭제 시 -D 옵션으로 삭제! 

 

git switch (branch name)

브랜치 이동

 

git switch -c (브랜치명)

브랜치 생성과 동시에 이동

 

git branch -m (기존) (변경)

브랜치 name 변경! 

 

각각의 branch 에서 작업한 내용은 merge나 rebase를 하기 전까지 영향을 주지 않음! 

그래서 각 branch에서 git log를 찍어보면 분기점부터 log가 다르다

 

branch를 합치는 방법은 총 2가지가 있는데 merge와 rebase가 있다. 

📌merge는 현재까지 작업한 기록을 남길 때 사용하고

📌rebase는 기록을 남기지 않고 합치게 된다! (합치고 나서 merge를 해줘야함.)

 

보통 협업을 할 때는 merge를 사용한다! 

 

📌merge사용방법

합칠 branch로 switch 한다. (주로 main)

 

main branch에서 git merge (branch name)하면은 병합이 완료된다!

이 때 conflict가 있다면 이를 해결해주고 당장 해결 못 할 것 같다면 merge --abort를 하면 됨

 

merge도 하나의 commit이므로 reset 으로 되돌릴 순 있는데 

merge 후에 branch 삭제 시 그건 안 됨. 내가 해봄. 내가 아직 배우는 입장이라 다른 방법이 있는지는 모르겠음. 

 

하여튼 merge가 완료되면 git branch -d (branch name) 해주면 됨.

 

📌rebase사용방법

합치려고 하는 branch 로 switch 해준다. 

git rebase main 

 

main의 시점은 rebase를 해도 업데이트가 되어있지는 않음. 그래서 git merge (branch name)을 해줘서 업데이트 해줌

merge 후에는 git branch -d (branch name)해주면 됨. 

 

📌merge rebase 했을 때 main과 충돌 시 

충돌을 해결하고 당장 해결이 어려울 경우

git merge --abort

git rebase --abort

하면 됨

 

충돌을 해결했으면 git add . git commit 으로 병합완료! :wq해주면 됨

git rebase의 경우 충돌이 여러 개일 수도 있는데 그런 경우 

충돌 해결하고 git add .

git rebase --continue를 해주면 된다. 

 

'Etc > git' 카테고리의 다른 글

[Git]github  (0) 2023.09.17
[Git]branch(차원 합치기/충돌 해결)  (0) 2023.09.15
[Git]Start git!(setting/시간여행/충돌해결)  (0) 2023.09.15