Git rebase

chloe·2020년 11월 9일
0

React

목록 보기
8/16

Git rebase?

기준을 설정한다는 의미.

1.백업
Git rebase하기 전에 파일을 날릴 수 있으니 미리 백업을 해둔다.

cp -rpv adwards-frontend adwards-frontend2

cp -rpv옆에 왼쪽 것이 현재의 폴더명, 오른쪽이 새로 생성할 폴더명

  1. 다시 원본 폴더로 이동

cd adwards-frontend

3.중간에 tig깔아준다.

apt-get install tig

tig 명령어 치면 내역을 다 볼 수 있다. q치면 나갈 수 있음

  1. gcm

rebase하기 전에 우리는 로컬에 있는 master브랜치를 업데이트 해줘야 한다. 체크아웃을 해준다.

git checkout master
git pull origin master

rebase는 push 전 단계에서 하는 것이기에 commit까지는 해야함

5.rebase

master에 현재 브랜치를 합치는 방법과 HEAD에서 커밋의 갯수만큼 세서 합치는 방법이 있다.

master브랜치에 직접 접근하는 방식

git rebase -i mater feature/ad_upload

git rebase -i를 치고 master와 마스터에 병합할 브랜치명을 순서대로 써준다! 여기서 -i는 interactive하게 처리하겠다는 의미

  • pick은 하나만 남기고 전부 s로 바꿔준다.

만약 충돌이 있다면 수정 후 git add. 그 다음에 git rebase --continue

  • 푸쉬하는 과정에서 force push를 해줘야 한다.

    git push origin 브랜치명 -f

force push를 하고 github commit 내역을 보면 1개로 줄어있음을 확인할 수 있다.

출처: https://gollumnima.github.io/posts/wecode8_2TIL_git_rebase

충돌해결(main으로 merge되고 충돌이 생김)
1. 현재브런치에서 이동 git checkout main
2. Git pull origin main
3. Git checkout feature/Mypage(내브런치로 이동)
그 다음에
1) git add .
2) git commit -m "커밋 메시지 입력"
3) git rebase -i main
4) 리베이스 후 conflict 있으면 수정 진행 / 없으면 다음단계 진행
->pick s s로 변경하고 dd해서 남길 커밋만 올리기
5) git add .
6) git rebase --continue
7) git push origin feature/브랜치이름 --f

profile
Front-end Developer 👩🏻‍💻

0개의 댓글