Way to developer
๋ก๊ทธ์ธ
Way to developer
๋ก๊ทธ์ธ
Git rebase
Choi Rim
ยท
2021๋ 8์ 22์ผ
ํ๋ก์ฐ
0
git
rebase
0
git
๋ชฉ๋ก ๋ณด๊ธฐ
1/1
git rebase
merge์ rebase์ ์ฐจ์ด์
git merge ๋ช ๋ น์ด์ git rebase ๋ช ๋ น์ด๋ฅผ ํผ์ฉํ๋ฉด ๋ฌธ์ ๊ฐ ์๊ธธ ์๋ ์์ผ๋, ํ๋์ ๋ช ๋ น์ด๋ฅผ ์ ํํด์ ์ฌ์ฉํ๋๋ก ํ์
merge๋ main branch๋ฅผ ๊ธฐ์ ์ผ๋ก ์์ฑ๋ feature branch์ ๋ชจ๋ commit์ ํ๋๋ก ํฉ์น๋ ๊ฒ์ด๋ค.
merge๋ฅผ ์ฌ์ฉํ๋ฉด ๋ถํ์ํ merge commmit์ด ์์ฑ๋๋ค.
๋ชจ๋ feature branch๊ฐ main์ผ๋ก merge ๋ ๋๋ง๋ค merge commit์ด ๋จ๋๋ค.
branch history๊ฐ ์ง์ ๋ถํด์ง๊ธฐ ์ฝ๋ค.
main ๋ธ๋์น์์ ๊ฐ ๊ธฐ๋ฅ๋ง๋ค ๋ ๋ฆฝ๋ branch๋ฅผ ์์ฑํด ๋ก์ง์ ์์ฑํ๊ณ ์์ ํ๋๋ผ๋ mergeํ์ ์ ๋ค๋ฅธ branch์ ์์ ๊ณผ ๋ด์ญ์ด ๊ฒน์ณ ๊ตฌ๋ถํ๊ธฐ ์ด๋ ค์์ง๋ค.
git rebase๋ฅผ ์ฌ์ฉํ๋ฉด ๊ฐ ๊ธฐ๋ฅ๋ง๋ค commit์ ํ๋๋ก ํตํฉํด ๊น๋ํ๊ฒ history๋ฅผ ๊ด๋ฆฌํ ์ ์๋ค.
git -HEAD
ํ์ฌ ์ฒดํฌ์์๋ ์ปค๋ฐ์ ๊ฐ๋ฅดํจ๋ค
ํ์ฌ ์์ ์ค์ธ ์ปค๋ฐ
HEAD๋ ๋ธ๋์น์ ์ด๋ฆ ๊ฐ๋ฅดํด
rebase ๋ช ๋ น์ด
git rebase -i main
rebase๋ฅผ ํ๋ฉด์ squash๋ฅผ ์ฌ์ฉํด ์ปค๋ฐ์ ํ๋๋ก ์ ๋ฆฌ ํ ์ ์๋ค
git rebase --abort
,
git reflog
์๋ชป ๋ฆฌ๋ฒ ์ด์ค ํ์ ์, ๋์๊ฐ ์ง์ ์ ์ฐพ์ ์ ์๋ค
git reset --hard ๋์๊ฐ์ง์
๋์๊ฐ ์ง์ ์ผ๋ก ๋ค์ git์ ๋ณต๊ตฌํ ์ ์๋ค
conflict ๋ฐ์ ์ ๐คฏ
์๋ํฐ์์ ์ถฉ๋ํ ์ฝ๋๋ฅผ ํด๊ฒฐํ ํ
git add . -> git rebase --continue๋ฅผ ๋ฐ๋ณตํ๋ค.
commit์ ํ ํ์๋ ์๋ค.
Choi Rim
https://rimi0108.github.io/
ํ๋ก์ฐ
0๊ฐ์ ๋๊ธ
๋๊ธ ์์ฑ