Git x Github ์ฐ๋ - ๋ก์ปฌ ์ ์ฅ์์์ ์๊ฒฉ ์ ์ฅ์
์ด๋ฒ ์์์์๋ ๋ก์ปฌ ์ปดํจํฐ์ Git ์ ์ฅ์๋ฅผ ๋ง๋ค๊ณ , Github์ ์๋ ์๊ฒฉ ์ ์ฅ์์ ์ฐ๊ฒฐํ๋ ๋ฐฉ๋ฒ์ ์ฝ๊ณ ์ฐจ๊ทผ์ฐจ๊ทผ ์๋ ค์ค๋๋ค. Git ๋ช
๋ น์ด ์ฌ์ฉ๋ฒ๋ถํฐ ๋ฐ์ํ ์ ์๋ ๋ฌธ์ ํด๊ฒฐ๋ฒ, ๊ทธ๋ฆฌ๊ณ ๋ก์ปฌ์์ ์์
ํ ๋ด์ฉ์ ์๊ฒฉ ์ ์ฅ์์ ์ฌ๋ฆฌ๋ ๊ณผ์ ๊น์ง ๋ค๋ฃน๋๋ค.
๋ชฉ์ฐจ
1.
2.
3.
4.
5.
6.
๋ก์ปฌ ์ ์ฅ์ ์ด๊ธฐํํ๊ธฐ [00:00:13]
โข
git initย ๋ช
๋ น์ด๋ก ํ์ฌ ํด๋๋ฅผ Git ์ ์ฅ์๋ก ๋ง๋ญ๋๋ค.
โข
์ด๋ย .git์ด๋ผ๋ ์จ๊ฒจ์ง ํด๋๊ฐ ์์ฑ๋๋๋ฐ, ์ด ํด๋๊ฐ Git ์ ์ฅ์์ ๋ชจ๋ ์ค์ ๊ณผ ๊ธฐ๋ก์ ๋ด๊ณ ์์ด์.
โข
๋น์ ํ์๋ฉด,ย .gitย ํด๋๋ โ์์
์ผ์งโ ๊ฐ์ ์ญํ ์ ํ๋ ๊ฑฐ์ฃ !
์๊ฒฉ ์ ์ฅ์ ์ฐ๊ฒฐํ๊ธฐ (git remote add) [00:03:31]
โข
Github์ ๋ง๋ ์๊ฒฉ ์ ์ฅ์ ์ฃผ์(URL)๋ฅผ ๋ก์ปฌ ์ ์ฅ์์ ์๋ ค์ฃผ๊ธฐ ์ํดย git remote add origin [URL]ย ๋ช
๋ น์ด๋ฅผ ์ฌ์ฉํฉ๋๋ค.
โข
์ฌ๊ธฐ์ย origin์ ์๊ฒฉ ์ ์ฅ์์ ๋ณ๋ช
(๋ณ์นญ)์ผ๋ก, ๊ด์ต์ ์ผ๋ก โ๊ธฐ๋ณธ ์๊ฒฉ ์ ์ฅ์โ๋ฅผ ์๋ฏธํด์.
โข
์ด๋ ๊ฒ ์ฐ๊ฒฐํ๋ฉด ๋ก์ปฌ๊ณผ ์๊ฒฉ ์ ์ฅ์๊ฐ ์๋ก ์ํตํ ์ค๋น๊ฐ ๋ฉ๋๋ค.
์๊ฒฉ ์ ์ฅ์์ ๋ธ๋์น ๋๊ธฐํ ๋ฌธ์ ํด๊ฒฐํ๊ธฐ [00:06:30]
โข
์๊ฒฉ ์ ์ฅ์์๋ ์ด๋ฏธย README.mdย ๊ฐ์ ํ์ผ์ด ์๋๋ฐ, ๋ก์ปฌ์๋ ์์ ๊ฒฝ์ฐย git pull์ ํ๋ฉด ์๋ฌ๊ฐ ๋ ์ ์์ด์.
โข
์ด๋๋ ๋ก์ปฌ ๋ธ๋์น์ ์๊ฒฉ ๋ธ๋์น๋ฅผ ์ฐ๊ฒฐ(์ถ์ )ํด์ฃผ๋ ๋ช
๋ น์ด๋ฅผ ์คํํด์ผ ํฉ๋๋ค.
โข
์๋ฅผ ๋ค์ด,ย git branch --set-upstream-to=origin/main mainย ์ฒ๋ผ ์
๋ ฅํด์ ๋ก์ปฌย mainย ๋ธ๋์น๊ฐ ์๊ฒฉย origin/mainย ๋ธ๋์น๋ฅผ ๋ฐ๋ผ๊ฐ๋๋ก ์ค์ ํฉ๋๋ค.
โข
๋ง์ฝ ์ถฉ๋์ด๋ ํ์คํ ๋ฆฌ ๋ฌธ์ ๋ฐ์ ์,ย git pull --rebaseย ๋ช
๋ น์ด๋ก ํ์คํ ๋ฆฌ๋ฅผ ๊น๋ํ๊ฒ ๋ง์ถ ์ ์์ด์.
๋ธ๋์น ๋ณํฉ(Merge)๊ณผ ๋๊ธฐํ ์ดํดํ๊ธฐ [00:14:18]
โข
๋ก์ปฌ ์ ์ฅ์์ย mainย ๋ธ๋์น์ ์๊ฒฉ ์ ์ฅ์์ย origin/mainย ๋ธ๋์น๋ ๋ณ๊ฐ์ ๋ธ๋์น์
๋๋ค.
โข
์๊ฒฉ ์ ์ฅ์์์ ๊ฐ์ ธ์จ ๋ณ๊ฒฝ์ฌํญ์ ๋ก์ปฌ ๋ธ๋์น์ ํฉ์น๋ ์์
์ย git mergeย ๋ช
๋ น์ด๋ก ํฉ๋๋ค.
โข
์ฝ๊ฒ ๋งํด, ๋ ์์
๋ด์ญ์ ํ๋๋ก ํฉ์ณ์ ์ต์ ์ํ๋ก ๋ง๋๋ ๊ณผ์ ์ด์์.
โข
์ด ๊ณผ์ ์ ํตํด ๋ก์ปฌ๊ณผ ์๊ฒฉ ์ ์ฅ์๊ฐ ๊ฐ์ ๋ด์ฉ์ ๊ฐ๋๋ก ๋๊ธฐํํฉ๋๋ค.
๋ก์ปฌ์์ ํ์ผ ๋ง๋ค๊ณ ์ปค๋ฐํ๊ธฐ [00:18:04]
โข
๋ก์ปฌ ์ ์ฅ์ ํด๋์ ์ ํ์ผ(์:ย ํ
์คํธ.txt)์ ๋ง๋ญ๋๋ค.
โข
git statusย ๋ช
๋ น์ด๋ก ๋ณ๊ฒฝ๋ ํ์ผ ์ํ๋ฅผ ํ์ธํ ์ ์์ด์.
โข
์ ํ์ผ์ โ์ธํธ๋ํธ(untracked)โ ์ํ, ์ฆ Git์ด ์์ง ์ถ์ ํ์ง ์๋ ์ํ์
๋๋ค.
โข
git add .ย ๋ช
๋ น์ด๋ก ํ์ฌ ํด๋์ ๋ชจ๋ ๋ณ๊ฒฝ ํ์ผ์ ์คํ
์ด์ง(์ปค๋ฐ ๋๊ธฐ ๊ณต๊ฐ)์ ์ฌ๋ฆฝ๋๋ค.
โข
git commit -m "๋ฉ์์ง"ย ๋ช
๋ น์ด๋ก ๋ณ๊ฒฝ์ฌํญ์ ๊ธฐ๋ก(์ปค๋ฐ)ํฉ๋๋ค.
โข
์ปค๋ฐ์ โ์ค๋
์ทโ์ ์ฐ๋ ๊ฒ๊ณผ ๊ฐ์์, ์์
๋ด์ฉ์ ์ ์ฅํ๋ ์ค์ํ ๋จ๊ณ์
๋๋ค.
์๊ฒฉ ์ ์ฅ์์ ๋ณ๊ฒฝ์ฌํญ ํธ์ํ๊ธฐ (git push) [00:21:46]
โข
์ปค๋ฐํ ๋ด์ฉ์ ์๊ฒฉ ์ ์ฅ์์ ์ฌ๋ฆฌ๋ ค๋ฉดย git push origin mainย ๋ช
๋ น์ด๋ฅผ ์ฌ์ฉํฉ๋๋ค.
โข
origin์ ์๊ฒฉ ์ ์ฅ์,ย main์ ๋ธ๋์น ์ด๋ฆ์
๋๋ค.
โข
ํธ์๊ฐ ์ฑ๊ณตํ๋ฉด Github ์๊ฒฉ ์ ์ฅ์์ ๋ด ๋ณ๊ฒฝ์ฌํญ์ด ๋ฐ์๋ฉ๋๋ค.
โข
์ด์ ๋ค๋ฅธ ์ฌ๋๋ ๋ด ์์
์ ๋ณผ ์ ์๊ณ , ํ์
์ด ๊ฐ๋ฅํด์ง๋๋ค!
๋ง๋ฌด๋ฆฌ ์์ฝ
์ด๋ฒ ์์์์๋ ๋ก์ปฌ ์ ์ฅ์๋ฅผ ๋ง๋ค๊ณ (git init), ์๊ฒฉ ์ ์ฅ์์ ์ฐ๊ฒฐ(git remote add origin [URL])ํ๋ ๊ธฐ๋ณธ ๊ณผ์ ์ ๋ฐฐ์ ์ด์. ์๊ฒฉ ์ ์ฅ์์ ๋ธ๋์น ๋๊ธฐํ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ๋ฐฉ๋ฒ๊ณผ, ๋ก์ปฌ์์ ํ์ผ์ ๋ง๋ค๊ณ ์ปค๋ฐํ ๋ค ์๊ฒฉ ์ ์ฅ์์ ์ฌ๋ฆฌ๋ ๊ณผ์ (git add,ย git commit,ย git push)๋ ์ตํ์ฃ . Git๊ณผ Github๋ฅผ ์ฐ๋ํด ํ์
๊ณผ ๋ฒ์ ๊ด๋ฆฌ๋ฅผ ์์ํ๋ ๋ฐ ๊ผญ ํ์ํ ๋ด์ฉ๋ค์ด๋, ์ฐจ๊ทผ์ฐจ๊ทผ ๋ฐ๋ผ ํด ๋ณด์๋ฉด ํฐ ๋์์ด ๋ ๊ฑฐ์์!
๊ถ๊ธํ ์ ์์ผ๋ฉด ๋๊ธ๋ก ๋จ๊ฒจ ์ฃผ์ธ์~ ์ฆ๊ฑฐ์ด ์ฝ๋ฉ ๋์ธ์! 
