
이번에는 rebase 옵션 중 --onto 옵션을 연습해보자.
1. rebase --onto 는 언제 사용할까 ?
히스토리 상황을 먼저 파악해보자.
일단 브랜치가 3개 보인다. (master, server, client)
master 브랜치 : C1 <- C2 <- C5 <- C6
server 브랜치 : C3 <- C4 <- C10
client 브랜치 : C3 <- C8 <- C9

그림으로 확인한다면 ?
server 브랜치는 master 브랜치에서 파생되었고, client 브랜치는 server 브랜치에서 파생된 것을 확인할 수 있다 !
여기서 server 브랜치는 내비두고 client 브랜치를 master 브랜치로 옮기려고 한다면 이럴 때 rebase --onto 를 사용하면 된다.

2. 예시
git rebase --onto [업데이트 하고 싶은 브랜치] [옮기고 싶은 브랜치가 파생된 부모 브랜치] [옮기고 싶은 브랜치] 로 명령어를 작성하자.
즉, git rebase --onto master server client 명령어를 실행시키면 ? (client 브랜치는 server 브랜치에서 파생됐으니까 !)
C8 [dea42ad], C9 [5abac72] client 브랜치가 master 브랜치 뒤로 잘 옮겨져 있는 것을 확인할 수 있다 😀



3. 정리
이렇게 브랜치에서 갈라져 나온 브랜치를 rebase 하는 rebase --onto 에 대해서 연습해봤다.
아직 브랜치에서 브랜치를 만들어서 작업해보지는 않아서 한 번도 써보지는 않았지만 나도 곧 유용하게 사용할 수 있었으면 ㅎㅎㅎㅎ 👍
'Git, Github' 카테고리의 다른 글
[Git, Github] 리베이스 rebase 활용 연습 (0) | 2022.03.26 |
---|---|
[Git, Github] 체리픽 Cherry-Pick 활용 연습 (0) | 2022.03.26 |