master์ ๋ค๋ฅธ branch๋ฅผ ๋ณํฉํ ๋ ์ฐ์ด๋ ๋ฐฉ๋ฒ์ด ๋ ๊ฐ์ง์ธ๋ฐ, ํ๋๋ merge์ด๊ณ , ๋ค๋ฅธ ํ๋๋ rebase ์ด๋ค.
rebase๋ ๋ด๊ฐ ์์
ํ๋ฉด์ ๋จ๊ฒผ๋ commit ์ค ๋ถํ์ํ ๊ฒ๋ค์ ์๋ต์ํค๊ณ ํ์ํ commit๋ง ๋จ๊ฒจ์ master์ ๋ณํฉํ๊ธฐ ๋๋ฌธ์ master์ commit์ ๋ณด๋ค ๊น๋ํ๊ฒ ๊ด๋ฆฌํ ์ ์๋ค.
์ฆ, rebase๋...
merge commit ์์ฑ์ ๋ฐฉ์งํ๋ค.history ๊ด๋ฆฌ๊ฐ ์ฝ๋ค. pull ๋ฐ๋๋ค.pushํ Feature branch๋ก ์ด๋ํ๋ค.โGit rebase -I mainโ๋ฅผ ์งํํ๋ค.rebaseํ๋ ๋์ squash ์งํํ ๋์๋
1. ๊ฐ์ฅ ์ค๋๋ commit์ pickํ๋ค.
2. ๋ค๋ฅธ ์ปค๋ฐ ๋ฉ์ธ์ง๋ ๊ฐ์ฅ. ์ค๋๋ commit์ ๊ธฐ์ค์ผ๋ก squash ํ๋ค.
3. ๋ค๋ฅธ ์ปค๋ฐ์ ์์
๋ด์ญ์ด ์์ด์ง๋ ๊ฒ์ด ์๋๋ค.
4. Esc -> :wq ๋ก ์ฐฝ์์ ๋น ์ ธ๋์จ๋ค.

๊ทธ๋ฌ๋ฉด ์์ ์ฉ ๋ฐ์ดํฐ๊ฐ ํ๋ ๋ ๋ํ๋๋ค.
1. ์ต์ข
์ ์ผ๋ก ์ด rebase๋ ์ปค๋ฐ์ ๋ด์ฉ์ ์์ฑํ๋ ๋ถ๋ถ
2. ํ์ฌ๊น์ง ์ ์ ์ปค๋ฐ ๋ฉ์์ง๊ฐ ์ ๋ถ ๋ํ๋๋ค.
3. ๋ถํ์ํ ๋ด์ฉ์ ์ ๊ฑฐํ๊ณ . ํ์ฌ ์์ ๋ด์ญ์ ๋ํ ์ปค๋ฐ ๋ฉ์์ง๋ฅผ ์ ์ฑ๊ป ์์ฑํ๋ค.
4. Esc -> :wq ์ ์ฅํ๊ณ ์๋ํฐ์์ ๋น ์ ธ๋์จ๋ค.

Successfully rebased!
์ฑ๊ณตํ๋ค๋ฉด git log๋ก ๊น๋ํด์ง ์ปค๋ฐ ๋ฉ์์ง๋ฅผ ํ์ธ ํ,
Push ํ๋ค.

Rebase ํ push
1. rebase๋ commit history๋ฅผ ์ ๋ฆฌํ๋ ์ญํ ์ ํ๋ค.
2. ๊ฐ์ ๋ธ๋์น์์ Rebase๋ฅผ ํ ๋๋ง๋ค history๊ฐ ๋ฌ๋ผ์ง ์ ์๋ค.
3. ์์ ์ฌํญ์ด ์ถ๊ฐ๋ก ์๊ธด ํ ๋ค์ rebaseํ๋ฉด history๊ฐ ๋ฌด์กฐ๊ฑด ๋ฌ๋ผ์ง๋ค.
4. Git์ history๊ฐ ๋ค๋ฅธ branch์ push๋ฅผ ํ์ฉํ์ง ์๋๋ค.
5. โGit push origin feature/login -fโ -f ์ต์
์ ์ฌ์ฉํ์ฌ force push๋ฅผ ์งํํ๋ค.
merge/ rebase ์ํฉ์ ๋ฐ๋ผ ๋ค๋ฅด๊ฒ ์ฐ๋ฉด ๋๋ค.
history๋ฅผ ์ด๋ป๊ฒ ๋ณด์กดํ๋๋์ ๋ฐ๋ผ ๊ฒฌํด๊ฐ ๊ฐ๋ฆด ์ ์๊ธฐ ๋๋ฌธ์ ์งํํ๋ ํ๊ณผ ํ๋ก์ ํธ์ ๋ฐ๋ผ ์ ํํ๋ฉด ๋๋ค.
์ข์ ๊ธ ์๋ดค์ต๋๋ค!
๊ถ๊ธํ๊ฒ rebase -i ์ต์ ์ผ๋ก ์ปค๋ฐ๋ด์ญ์ ํฉ์น์ง์๊ณ rebase ๋ฅผ ํ๋ค๋ฉด ์ปค๋ฐ id? ๋ ๋ฐ๋์ง๋ง ์ด๋ค๊ฑธ ํ๋ค๋ ํ์คํ ๋ฆฌ๋ ๋จ๊ธธ์ ์์ง์๋์??
๊ผญ -i ์ต์ ์ผ๋ก ์ปค๋ฐ๋ด์ญ์ ํฉ์ณ์ผ ๋ฆฌ๋ฒ ์ด์ค๊ฐ ๋๋๊ฑด๊ฐ์??