์ด๋ฒ์๋ ๋ธ๋์น๋ฅผ ๋ง๋ค๊ณ , ๋ด๊ฐ ํ์ฌ ์ด๋ค ์ํฉ์ ์๋์ง,
์ํฉ๋ง๋ค ์ด๋ป๊ฒ ํด์ผํ๋์ง๋ฅผ ์ ๋ฆฌํด๋ณผ๊ฒ์
ํ์ฌ ๋ฐฐ์ฐ๋ฆฌ์คํธ๋ฅผ ์ ์ ํ
์คํธ ํ์ผ์ ๊นํ๋ธ์ ์ฌ๋ฆฐ ์ํฉ์ธ๋ฐ,
์ฌ๊ธฐ์ ์์ง ํ์ ์ธ ์๋ ๋ฐฐ์ฐ๊ฐ ์ถ๊ฐ ๋๋ ์ํฉ์ด์์
์์ง ํ์ ์ ์๋ฌ๊ณ , ๊ธฐ๋ก์ ํด๋์ผ ํ๊ธฐ๋๋ฌธ์ ์ฐ๋ฆฌ๋ ๋ธ๋์น๋ฅผ ์ด์ฉํด์
๋๊ธฐ์ค์ธ ๋ฐฐ์ฐ๋ค์ ๊ธฐ๋กํ๊ฒ ์ต๋๋ค.
์ฐ์ ํ์ฌ ๋ธ๋์น์ ์ํฉ์ ๋ณด๊ณ ์ถ๋ค๋ฉด
remove๊ฐ ์๋๊ฑด ์คํํด๋ณผ๋ ค๊ตฌ ๋ง๋ ๊ฑฐ๋๊น ๊ทธ๋ฅ ๋ณด์๋ฉด ๋์!
git branch --list
์ ๋ช ๋ น์ด๋ก ํ์ธํ์๋ฉด ๋๊ณ
๋ธ๋์น๋ฅผ ์ถ๊ฐ ํ๊ณ ์ถ๋ค๋ฉด ์๋ ๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํ์๋ฉด ๋์
git branch [branchname]
์ถ๊ฐ๋ฅผ ํ๊ณ ์ํ๋ฅผ ๋ณด๋ฉด ์๊น์๋ ๋ค๋ฅธ ๋ธ๋์น๊ฐ ์๊ธด๊ฑธ ๋ณผ์ ์์ต๋๋ค.
ํผ์์ ์์
์ ํ๋ค๋ฉด ๋ง์ ๋ธ๋์น๊ฐ ํ์ํ์ง ์๊ฒ ์ง๋ง,
์ฌ๋ฌ ์ฌ๋๊ณผ ํ์
์ ํ๊ฒ ๋๊ณ , ํ๋ก์ ํธ๋ฅผ ํ๊ฒ ๋๋ค๋ฉด ์ด๋ง์ด๋งํ ๋ธ๋์น๊ฐ ์๊ธฐ๊ฒ ๋ ํ
๋ฐ
์ด๋ฐ ์ํฉ์์ ์ฐ์ด๊ฒ ๋ ๋ธ๋์น๋ฅผ ์ด๋ํ๋ ๋ฒ ์ดํด๋ณด๊ฒ ์ต๋๋ค.
git checkout [branchname]
์ ๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํด์ ์ด๋์ ํ๊ฒ ๋๋๋ฐ
์ฐ์ ์๊น ๋ง๋ค์๋ actor_ver2์ ๋ธ๋์น์ ๋ค๋ฅธ ํ ์คํธ ํ์ผ์ ๋ง๋ค์ด์ ์คํํ๊ฒ ์ต๋๋ค.
ํ์ฌ actor_ver2์์ ์๋ ์๋ ๋ฐฐ์ฐ๋ค ๋์ ๋ค๋ฅธ ๋ฐฐ์ฐ๋ค์ ๋ฃ์ด์ push๋ฅผ ํด์ค๋๋ค.
actor_ver2์์๋ story_ver2 ํ์ผ์ด
master์๋ ์๋๊ฑธ ๋ณด์ค์ ์๋๋ฐ ๋ธ๋์น๊ฐ ๋๋์ด ์ง๋ฉด์ ๊ฐ๊ฐ์ ๋ฒ์ ์ ๊ฐ์ง๊ณ ์๋ค๊ณ
์๊ฐํ์๋ฉด ๋ฉ๋๋ค.
์ฌ๊ธฐ์ ๋ถํฐ๋ ์ด์ 3๊ฐ๋ก ๋ธ๋์น๋ฅผ ๋ค๋ค๋ณผํ ๋ฐ
๊ฐ์๊ธฐ ์ฃผ์ฐ๋ฐฐ์ฐ๋ค์ ๋ค๋นผ๋ฒ๋ฆฌ๊ณ ๋ธ๋์๋์ฐ ๋จ๋ ์ํ๋ฅผ ๋ง๋ค๊ณ ์ถ์ดํ๋ ์ฌ๋์ด ๋์์.
๋ ์ด๋ ๊ฒ ํด์ ์ํ๋ฅผ ๋ง๋ค๊ณ ์ถ๋ค ํฉ๋๋ค
์ด์ ์คํ ๋ฆฌ ์๊ฐ๋ ํ๋์ฉ ๋ค์ด๊ฐ์ ์คํ ๋ฆฌ๋ฅผ ์ถ๊ฐํ๊ฒ ์ฃ
๊ฐ๊ฐ์ ์คํ ๋ฆฌ ์๊ฐ๋ค์ด ๋ธ๋์น์ ๋ค์ด๊ฐ์ ์ํฉ์ ๋ง๋ค๊ณ ์ฌ๋ฆฝ๋๋ค.
์ฒซ๋ฒ์งธ๋ ์๋ณธ, ๋๋ฒ์งธ๋ ๋ค๋ฅธ ๋ธ๋์น์ ์ํฉ์ธ๋ฐ
๊ฐ๊ฐ ๋ค๋ฅธ๊ฒ ๋ณด์
๋๋ค.
HEAD
ํ์ฌ ๋ด๊ฐ ๋ณด๊ณ ์๋ ์์น = ํ์ฌ ๋ด ์์น๋ผ๊ณ ๋ณด์๋ฉด ๋์
์ค๋ฅธ์ชฝ๊ฑฐ๋ ์ผ์ชฝ์ด๋ ๋ค๋ฅด๊ฒ branch์ ์ด๋ฆ์ด ๋ค๋ฅธ๊ณณ์ ์๋๋ฐ
master์ ํธ์ํ๊ณ hater์ ํธ์๋ฅผ ํ์ต๋๋ค.
์ํฉ์ ๋ณด์ฌ์ฃผ๊ธฐ ์ํด ๋๊ณณ์ ํธ์๋ฅผ ํ๊ณ ,
hater ๋ธ๋์น๋ก ํธ์๋ฅผ ํ๊ฒ ๋๋ฉด ๋ค์ ํตํฉ๋ฉ๋๋ค.
์ด์ ๋ธ๋์๋์ฐ์ ๋จ๋ ์ํ๊ฐ ๋ง๋ค์ด ์ง๋๊ฑธ๋ก ํฉ์๋ฅผ ๋ณด๊ณ , ์ด์ ์ ์์ ๋ค์ด๊ฐ๊ธฐ๋ก ํด์
git merge [branchname]
ํตํฉ์ ํ ๋ ค๋๋ฐ ๋ฌธ์ ๊ฐ ์๊น๋๋ค.
์๋ ์๋ ๋๋ณธ์ ์ถ๊ฐํ๊ฒ ์๋๋ฐ, ์ด๊ฑธ ์ด๋ป๊ฒ ํด์ผํ ์ง ์ ํ์ ํด์ผํฉ๋๋ค.
์ ๊ฐ vsc๋ฅผ ์ฐ๊ธฐ๋๋ฌธ์ vsc๋ก ์ค๋ช
์ ๋๋ฆด๊ฒ์
๊นํ๋ธ ์ค์ ํ๊ธฐ๊ฐ ๊ต์ฅํ ํธํด์ ๐
์ด 3๊ฐ์ ์ ํ์ง๊ฐ ์๋๋ฐ
1. ๋ง์คํฐ๋ธ๋์น์ ์๋ ๋ด์ฉ๋ง ๋จ๊ธด๋ค.
2. ๋ค๋ฅธ ๋ธ๋์น์ ๋ด์ฉ์ ๊ฐ์ง๊ณ ์จ๋ค.
3. ๋๋ค ๊ฐ์ง๊ณ ์จ๋ค.
์ฐ๋ฆฌ๋ ๋ธ๋์๋์ฐ๋ฅผ ๋ง๋ค๊ฑฐ๋๊น ๋๋ฒ์งธ๊ป ์ ํํด์ ๊ฐ๊ฒ ์ต๋๋ค.
์ด๋ ๊ฒ ์ถ๊ฐ๋ฅผ ํ๊ณ ๋๋ฉด ๋ง์คํฐ ๋ธ๋์น์ ์๋ ๋ด์ฉ์ด ์ฌ๋ผ์ง๊ณ ,
๋ธ๋์น์ ์๋ ๋ด์ฉ์ด ๋ง์คํฐ ๋ธ๋์น์ ๋จ๊ฒ ๋ฉ๋๋ค.
์ฌ๊ธฐ์ git log ๋ฅผ ๋ณด์๋ฉด
HEAD๋ ์ ์ผ ์ต์ ์ ์ํฉ์ ์๊ณ hater ๋ธ๋์น์ ๋ด์ฉ๋ค์ ํจ๊ป ๊ฐ์ง ๋ชปํ๊ฒ ๋ฉ๋๋ค.
์ฌ๊ธฐ๊น์ง ๋ธ๋์น๋ฅผ ํตํฉํ๋ ๊ณผ์ ์ ์ญ ๋ดค๋๋ฐ,
ํตํฉ์ ํ๋๋ฐ ๋ง์ฝ์ ๋ค๋ฅธ ์ฌ๊ฑด์ ๋ค๋ฅธ ์ํฉ์ผ๋ก ๋๋๋ฆฌ๊ณ ์ถ๋ค๋ฉด
์ข ํฌ๊ฒํด์ ๋ณด๊ฒ ์ต๋๋ค
๋
ธ๋์์ผ๋ก ์ ํ์๋ ๋ถ๋ถ์ ๋ณด์๋ฉด ๊ฐ๊ฐ์ ์ปค๋ฐ๋ง๋ค ์์ด๋? ๊ฐ์๊ฒ ์๋๋ฐ
ํธ์์ ์ปค๋ฐ์์ด๋๋ผ๊ณ ํ ๊ฒ์ ์ด๊ฑธ ๋ณต์ฌํด์
git checkout [commit id]
์
๋ ฅํด ์ฃผ์๋ฉด ๊ทธ ๋น์์ ์์น๋ก ๋์๊ฐ ์ ์์ต๋๋ค.
์ ๋ ๋งจ ์ฒ์ pushํ๋ ๊ณณ์ผ๋ก ๊ฐ๋ณผ๊ฒ์
๋ฐ์ ํ์ผ์ ์ง์์ง ์ํ๋ก ์์ง ๋ฐฐ์ญ์ด ์๋ฌด๊ฒ๋ ์ ํด์ ธ์์ง ์์ ์ํ๋ก ๋์์์ต๋๋ค.
๋ฌผ๋ก git log๋ ๋ฐ๋์ด ์๊ณ ์
git checkout master
๋ช ๋ น์ด๋ก ๋ค์ ๋๋์์ค์๋ฉด ๋ฉ๋๋ค.
์ ์ํ๋ก ๋์๊ฐํ์ ๋ค์ ์์ ์ ํด์ ์ด์ด๊ฐ๋๊ฑด ๋ค์ ๋ธ๋ก๊ทธ์์ ๋ค๋ค๋ณผ๊ฒ์
์ด์ ๋๋ฅผ ํ๊ณ ํผ์์ ํ๋ฒ ํด๋ณด์๋ฉด ์๋ง
์ด ๋ค์๋ธ๋ก๊ทธ ๋ด์ฉ์ด ์ดํด๊ฐ ํจ์ฌ ์๊ฐ์ค๊ฑฐ์์
ํด๋ณด๊ณ ๋๋ฉด ์ด๋ป๊ฒ ๊น์ด ๋์๊ฐ๋์ง ์ดํด๊ฐ ๊ฐ๊ธฐ ๋๋ฌธ์
์ ๋ ์ฌ์ค ๋ณต์ตํ๋ ์ฐจ์์์ ๋ธ๋ก๊ทธ๋ฅผ ์ฐ๋ฉด์
์ดํด๊ฐ ๊ฐ๋ ๋ถ๋ถ์ด ์ข ์์์ด์ ๐
ํ์์๋ ์ ์ฌ์ฉํ์ง ์๋ ๋ถ๋ถ๋ ๊ฒ์ํ๋ฉด์
๋ค์ ํ๋ฒ ๊ณต๋ถํ๊ฒ ๋์ด์ ์ข์๊ณ ์
์ ๋ ๋ค์์ฃผ์ ๊น ์ ๋ฆฌํด๋ณด๋ ค๊ณ ํ๋๋ฐ ์คํ๋ ํฌ์คํ ๋ค์ด ๋์์ด ๋ง์ด๋ ๊ฒ ๊ฐ์์๐๐ ๊ฐ์ฌํฉ๋๋ค๐โโ๏ธ