
이번주는 git 에서의 잡다한 commit 내역들을 깔끔하게 처리해주는 git rebase를 배웠다.
(git commit history를 변경도 가능(squash사용))

해당 branch로 이동
git rebase -i master // branch의 기존master를 최신master로 변경
(-i는 interactive)
conflict 해결
git add .
git rebase --continue
git push origin feature/브랜치명 --force
(강제로 push)
아래는 내가 github에서 보여지는 내가 커밋한 내역들이다.(2개)
이제부터 이 내역들을 하나로 합쳐주는 rebase를 시작한다 !

시작 전 해야할 일을 끝낸 후,
해당 브랜치로 이동
git checkout feature/브랜치명
터미널로 가서 rebase 명령어를 친다.
git rebase -i master
(git rebase -i 마스터 )
맨 윗줄에 내가 커밋했던 내역들이 나올것이다. (나는 커밋내역이 두개였기때문에 두줄)
(i 를 눌러서 insert모드로 변경후)
pick 으로된 부분을 하나만 남겨두고 나머지들은 s 로 바꿔준다. (s, squash= use commit, ut meld into previous commit)
(esc 를 눌러서 insert모드를 끄고)
:wq 로 저장.

이 단계가 끝나면
conflict를 해결하고,
add, continue 명령어를 친다.
git add .
git rebase --continue
그럼 여러줄의 주석들과
전에 있었던 커밋메세지들을 볼수 있다.
필요한 부분을 제외한것들을 지운다. (dd)
:wq 로 저장.

successfully rebased가 뜨면 성공!!!

이때 remote환경에 push를 해준다.
git push origin feature/CartModal
이렇게 push를 하게되면 에러메세지가 뜰것이다.
git commit history를 강제로 변경했기 때문이다.
이때 강제로 push를 해줘야한다.
git push origin feature/CartModal --force

github 확인하면 commit내역이 하나로 줄어든걸 확인할 수 있다.
