Git Workflow & Rebase

Peter Oh·2020년 12월 29일
0

Git Flow

지금까진 GitHub에서 내가 알아왔던 브랜치는 이렇게 두개!

  • main(=master) - production release 를 목표로하는
  • feature

그러나, 이제 새롭게 알게 될 친구는?! Develop branch!

서비스가 되고 있는 동안에는 develop 브랜치에 merge 하면서 (다음 버전을 위한 기능들 추가) 하면서 개발을 계속해 갑니다!!

Develop 브랜치에서는 버그 수정이 불가능하다, 다른 사람들이 develop 브랜치에 merge를 하고 있기 때문에 ex) 태원님 께서 눈 내리기 기능을 merge하심 그 동안에...

Release 브랜치에서 버그 fix!

Develop 브랜치에 변화가 생기면, pull을 받아서 작업을 해줘야함

그렇게 신나게 작업해서 2.0 v 까지 배포 했느데...... 갑자기 나타난 bugggggg 요놈 잡았다! 는 Hotfix 브랜치로 merge! MainDevelop 브랜치 모두에 merge 되어야 합니다!!!

git flow init
feature/

Git Rebase

git -commit 했던 것을 하나의commit으로 묶어서 하나만 남기는 것

commit 2, 3개 당 무조건 rebase를 진행하자.
임의의 commit해서 conflict가 발생하면, 하나씩 해결을 해가야지,

git rebase --coontinue

git rerbase --abort - rebase를 멈추고, 이전으로 돌아가는 것, 내가 어디서 conflict가 났는지 잘 모를 때 해야 할 부분

git checkout -b feature/music - 브랜치 생성과 동시에 이동

merge와 굉장히 유사하지만, 과정이 좀 다른 rebase!!!

merge를 언제 했는지는 사실 중요하지 않다. merge commit 이 너무 많이 남아...
history가 너무 지저분 해진다...

내 브랜치를 생성한 시점이 base 가 되기 때문에, rebase 라고 칭하는 것이다

rebase를 통해 squash를 해보도록 합니다!!!

profile
def backend_engineer():

0개의 댓글