rebase -i
์ต์ ์ ์ด์ฉํ๋ฉด ์ด์ ์ ์๋ชปํcommit
์ ์์ ํ ์ ์๋ค- ๊ทธ๋ฌ๋
rebase -i
๋ก ์์ ํcommit
์ดํ์commit
์ ๋ชจ๋ ์ด์ ๊ณผ ๋ค๋ฅธ ์ํ๊ฐ ๋๋ค - ๋๋ฌธ์, ์ด๋ฏธ ๊ณต๊ฐ ์ ์ฅ์์
push
ํcommit
์rebase
ํ์ง ์๋ ๊ฒ์ด ์ข๋ค
rebase -i
์ต์ ์ ์ฌ์ฉํ ๋์๋, ๋ฐ๋์ ์์ ํ๋ ค๋commit
์ด์ ์commit
์ ์ฌ์ฉํด์ผ ํ๋ค- ์๋์ ๊ฐ์ด
.
์ผ๋ก ์ ๋ ฅ๋commit message
๋ฅผ ์์ ํ๋ ค๋ฉด, ๊ทธ ์ด์ commit
์hash code
๋ฅผ ์ด์ฉํด์ผ ํ๋ค - ๋ณ๊ฒฝํ๋ ค๋
commit
์pick
๋จ์ด๋ฅผr
๋ก ๋ฐ๊ฟ ์ฃผ๋ฉด ์๋ก์ดcommit message
๋ฅผ ์์ฑํ ์ ์๋ค
- ํน์
commit
์ ์ญ์ ํ๋ ค๋ฉด ๋์ผํ๊ฒgit rebase -i ํด์์ฝ๋
๋ฅผ ์ ๋ ฅํด์ฃผ๊ณ ,pick
์d
๋ก ๋ณ๊ฒฝํด์ฃผ์
- ๋๋ฌด ๋ง์
commit
์ดlog
์ ํฌํจ๋์ด ์์ผ๋ฉด, ๊ด๋ฆฌ ๋ฐ ๊ฒ์์ด ์ฉ์ดํ์ง ์๋ค - ์ด๋ด ๋์๋ ๋ ๊ฐ์ง ์ด์์
commit
์ ํฉ์ณ์ ํ๋์commit
์ผ๋ก ๋ง๋ค ์ ์๋ค git rebase -i ํด์์ฝ๋
ํ, ํฉ์นcommit
์ค ๊ฐ์ฅ ์์commit
์ ์ ์ธํcommit
๋ค์pick
์s
๋ก ๋ณ๊ฒฝํ์- ์ด์ด์
commit message
๊น์ง ์ ๋ ฅํ๊ณ ์ ์ฅํ๋ฉด ๋๋ค
commit
ํ๋์ ์ฌ๋ฌ๊ฐ์ง ๊ธฐ๋ฅ์ ์์ ์ด ํฌํจ๋์ด ์์ผ๋ฉด, ๋์ค์ ๋๋ฒ๊น ํ๊ธฐ ๊ณค๋ํ ๊ฒฝ์ฐ๊ฐ ์๋ค- ์ด๋ด ๋์๋ ์ฐ์
git rebase -i
์ต์ ์์pick
์e
๋ก ๋ณ๊ฒฝํ๋ค
- ์ดํ
git reset HEAD~1
์ ์ด์ฉํด์ ์์ ์ฌํญ๋ค์ ๋ชจ๋working directory
๋ก ๋จผ์ ์ฎ๊ธฐ์
- ๊ฐ๊ฐ์ ์์ ์ฌํญ๋ง๋ค ์๋ก์ด
commit
์ ๋ง๋ค์ด ์ฃผ๊ณlog
๋ฅผ ๋ณด๋ฉด ์๋์ ๊ฐ๋ค - ์ฌ๊ธฐ์
git rebase --continue
๋ฅผ ํ๋ฉดrebase
๊ฐ ์๋ฃ๋๋ค
- ๋์ผํ ํ์ผ์ ์์ ์ฌํญ์ ๋ด๊ณ ์๋ ๋
commit
์ฌ์ด์์ ๋ณ๊ฒฝ์ด ๋ฐ์ํ๋ฉดconflict
๊ฐ ๋ฐ์ํ๋ค - ์๋์
fourth commit0
๋fourth commit
๊ณผ ๋์ผํ ํ์ผ์ ๋ณ๊ฒฝํ์๋ค git rebase -i
์d
์ต์ ์ผ๋กfourth commit0
๋ฅผ ์ ๊ฑฐํ๋ฉด ์๋์ ๊ฐ์ดconflict
๊ฐ ๋ฐ์ํ๋ค
rebase
์ด์ ์ผ๋ก ๋์๊ฐ๋ ค๋ฉดgit rebase --abort
๋ช ๋ น์ด๋ฅผ ์ด์ฉํ๋ฉด ๋๋ค- ๊ณ์
rebase
๋ฅผ ์งํํ๋ ค๋ฉด ์ง์ ํ์ผ์ ์์ ํ๊ณgit add
ํ ํ,git rebase --continue
ํ๋ฉด ๋๋ค