기준을 설정한다는 의미.
1.백업
Git rebase하기 전에 파일을 날릴 수 있으니 미리 백업을 해둔다.
cp -rpv adwards-frontend adwards-frontend2
cp -rpv옆에 왼쪽 것이 현재의 폴더명, 오른쪽이 새로 생성할 폴더명
cd adwards-frontend
3.중간에 tig깔아준다.
apt-get install tig
tig 명령어 치면 내역을 다 볼 수 있다. q치면 나갈 수 있음
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하게 처리하겠다는 의미
만약 충돌이 있다면 수정 후 git add. 그 다음에 git rebase --continue
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