์ค๋์ ์ปค๋ฐ์ ํ๋๋ก ํฉ์น ์์๋ Git Rebase์ ๋ํด ์์๋ณผ๋ ค๊ณ ํฉ๋๋ค
๋ค๋ค ํ์์ Git
์ ๋ง์ด ์ฌ์ฉํ ๊ฑฐ๋ผ๊ณ ์๊ฐํฉ๋๋ค ์ฝ๋๋ค์ ์์ ํ๊ณ commit
์ ์์ฃผ ํ๋๊ฒ ์ต๊ด์ด ๋๊ณ push
๋ฅผ ํ๊ฒ ๋๋ฉด ๊ทธ๋ํ ํ๋ ์ปค๋ฐ ๋ด์ฉ๋ค์ด ์ฌ๋ฌ๊ฐ๊ฐ ๋จ์ ์ง์ ๋ถํด ๋ณด์ด๋๋ฐ ๊ทธ๋ด๋ Rebase
๋ฅผ ์ฌ์ฉํด ์ปค๋ฐ์ ํ๋๋ก ํฉ์ณ์ค๋ค
๋ธ๋ ์น์์ ์์ ์ ํ๋ฉฐ ์ปค๋ฐ์ 2~3๊ฐ์ ๋ ์์๋ก๋๋ค ๊ทธํ์ ์์ํ๋ ์์๋ฅผ ์ ์ด๋ณผ๊ฒ ์ต๋๋ค
git add .
git commit -m"๋ด์ฉ"
git rebase -i master(์ต๊ทผ๋ง๋์ ๋ถ๋ค์ main)
pick
๋ง ๋จ๊ธฐ๊ณ ๋๋จธ์ง pick
๋ s(squash)
๋ก ๋ฐ๊ฟ์ค๋ค.ESC
๋ฅผ ๋๋ฅด๊ณ :wq
๋ฅผ ํด ๋๊ฐ์ค๋ค.rebase
๋ ๋์
๋๋ค git log
๋ฅผ ์ณ์ ํ๋๋ก ํฉ์ณ์ง ์๋ฆ๋ค์ด ์ปค๋ฐ์ ๋ณด๋ฉฐ ํ๋ญํด ํ์๋ฉด ๋ฉ๋๋ค.conflict
๊ฐ ๋ฌ๋ค๋ฉด ์๋ง ํ์ผ์ด ๋ ๋ผ๊ฐ๊ฑฐ ์ฒ๋ผ ๋ณด์ผ๊ฒ๋๋ค.
๋นํฉ ํ์ง๋ง๊ณ ํ์์ conflict
๋ฅผ ํด๊ฒฐํ๋ฏ์ด ํ๋ฉด ๋ฉ๋๋ค.
-์ถฉ๋๋ ์ฝ๋๋ค์ ์์ ํ๊ณ
git add .
๋ฅผ ํด์ฃผ๊ณ commit
๋ฅผํ๋ฉด ์ ๋ ์๋ฉ๋๋ค!! commit
๋ง๊ณ git rebase --continue
๋ฅผ ํด์ ๋๊ฐ์ด ์งํํด ์ฃผ์๋ฉด ํด๊ฒฐ ๋ฉ๋๋ค!