Git๊ณผ Github๋ ๊ฐ๋ฐ์๋ค์ด ํ๋ก์ ํธ๋ฅผ ์ค์ฌ์ผ๋ก ํ์
ํ ๋ ํจ์จ์ ์ผ๋ก ์์
ํ๊ธฐ ์ํด ์ฌ์ฉํ๋ ํด์ด๋ค.
๋์ ์๋ก ๋ค๋ฅธ ๊ฐ๋
์ผ๋ก ์ปคํผ์ ์ปคํผ์์ ๊ด๊ณ๋ก ์๊ฐํ๋ฉด ๋๋ค๊ณ ํ๋ค.
git ๊ณผ github ๊ฐ ๋ญ์ง ์์๋ณด๊ณ ๋ช
๋ น์ด๋ค์ด ์์ ํ ์ต์ํด์ง์ง ์์์ ์ฐธ๊ณ ํ๊ธฐ ์ํด ๊ธฐ๋กํ๋ ค๊ณ ํ๋ค.
git
-Version Control System(VCS): ๋ถ์ฐ ๋ฒ์ ๊ด๋ฆฌ ์์คํ
-๊น์ ๋ด ํ์ผ์ ์ธ์ ๋ ๋ชจ๋ ํ์ผ์ ๋ณํ๋ฅผ ๊ธฐ๋กํ๋ค.
-๊น์ ์ต๊ฐ์ ์ ๊ฐ์ ํ์ผ ๋ํ ๊ฐ๊ธฐ ๋ค๋ฅธ ๋ฒ์ ์ ๋ณด๊ดํ ์ ์์(ํ์๋ผ์ธ ๊ฐ์)
-๊ฐ๊ธฐ ๋ค๋ฅธ n๊ฐ์ ํ์ผ์ ํด๋น ๋ณ๊ฒฝ์ฌํญ ํ์ผ์ ํ ๋ฒ์ ๋ค ์ ์ฉํด์ค๋ค.
-๋์ ๋ค๋ฅธ ์ฌ๋์ด ํ๋์ ํ์ผ์ ๊ฐ๊ณ ์ผ์ ํ ์ ์๊ณ ์๋ก์ ๋ณ๊ฒฝ์ฌํญ๊ณผ ์ถฉ๋ํ ์ผ ์๋ค,
-์๋ก์ ๋ณ๊ฒฝ์ฌํญ์ ๊ณต์ ํ ์ ์๋ค.
github
-์๋ก์ ํ์คํ ๋ฆฌ๋ฅผ ๊ณต์ ํ ์ ์๋ ๊ณณ
-๊นํ๋ธ๋ ํด๋ผ์ฐ๋์ ์๋ ๊น ์ ๊ณต์
-๋ด ์ปดํจํฐ์ ์๋ ๊น ํ์คํ ๋ฆฌ๋ฅผ ๊นํ์ ์ฌ๋ฆฌ๋ฉด ๋ค๋ฅธ ์ฌ๋์ด ์ด๊ฑธ ๊ฐ์ ธ์ ๋ณํ๊ธฐ๋ก์ ๋ชจ๋ ๋ณผ ์ ์๋ค.
-๋ค๋ฅธ ์น์ฌ์ดํธ๋ ์์ง๋ง ๊นํ์ด ์ ์ผ ์ ๋ช
ํด์ ์ ๋ช
๊ธฐ์
์ ์คํ ์์ค๋ค์ ๋ค ๋ณผ ์ ์๋ค.
Repositories(์ ์ฅ์)
-Local repository : ๋ด ์ปดํจํฐ ๋ก์ปฌ ์ ์ฅ์
-Remote repository : ์ธ๋ถ ์ ์ฅ์, ๋ก์ปฌ ํ๋ก์ ํธ์ ๋ณํฉํ๊ณ ๋ณ๊ฒฝ์ฌํญ์ ์ ์ฅํ๊ณ ์ฝ๋ ๊ณต์ ํ ์ ์๋ ๊ณณ
Add
git add .
-ํ์ผ์ staging area๋ก ์ถ๊ฐ
Commit
git commit -m "ADD : ์์ ๋ ๋ด์ฉ"
-ํน์ ๋ด์ฉ์ด๋ ๊ธฐ๋ฅ์ ์ถ๊ฐ/์์ ํ ํ์ ์ํ๋ฅผ ์ค๋
์ท์ฒ๋ผ ์ปค๋ฐ์ ์ ์ฅํ๋ค.
-์ปค๋ฐํ๋ ค๋ฉด ๋จผ์ staging area์ ์ถ๊ฐํด์ค์ผ ํ๋ค.
๐ ์ ์ฝ๋์์ -m์ ํ ์ค ๊ฐ๋จํ ์ธ ๋ ํํ
Status
git status
-๋ ํ์งํ ๋ฆฌ์ ํ์ฌ ์ํ๋ฅผ ํ์ธ
-ํ์ธํ๊ณ ๋๋ฉด git์ผ๋ก ์ถ์ ๋์ง ์๋ ํ์ผ๋ค์ ๋ฐ๊ฒฌํ๊ณ staging area์ ์ถ๊ฐํ ์ ์๋ค.
Log
git log
-๋ชจ๋ ์ปค๋ฐ ๋ด์ญ์ ํ์ธ
Checkout
git checkout ์ด๋ํ๋ ค๋ ๋ธ๋์น ์ด๋ฆ
-์ด๋ํ๊ณ ์ถ์ ๋ธ๋์น๋ก ์ด๋ํ์ฌ ์์
ํ ์ ์๋ค.
-์ด๋ํ๊ณ ๋๋ฉด ๋ณ๊ฒฝ ์ฌํญ์ด๋ ์ปค๋ฐ์ ์ด๋ํ ๋ธ๋์น์๋ง ์ํฅ์ ์ค๋ค.
Branch
git branch ์์ฑํ๋ ค๋ ๋ธ๋์น ์ด๋ฆ
-๋
๋ฆฝ์ ์ธ ์์
๊ณต๊ฐ์ ๋ง๋ค์ด, ๋ค๋ฅธ ๋ธ๋์น์ ์ํฅ ๋ฐ์ง ์๊ณ ์์
์ ์งํํ ์ ์๋ค.
-์ฌ๋ฌ ๋ช
์ด ๋์์ ์์
ํ ๋, ๋ฉ์ธ ๋ธ๋์น์์ ์์ ์ ๋
๋ฆฝ๋ ์์
๊ณต๊ฐ์ธ ๋ธ๋์น๋ฅผ ๋ง๋ ๋ค.
-์๋ก ๋ง๋ค์ด์ง ๋ธ๋์น๋ ํ์ฌ ํ๋ก์ ํธ์ ์ฝ๋๋ฅผ ๊ทธ๋๋ก ๋ฐ์ํ์ฌ ์์ฑํ๋ค.
๐ git branch ๋ก ์ ๋ธ๋์น๋ฅผ ์์ฑํ๊ณ ๋์ git checkout ๋ช
๋ น์ด๋ฅผ ํตํด ์ด๋ํด์ค์ผ ์ ๋ธ๋์น์์ ์์
์ ํ ์ ์๋ค.
git branch
-ํ๋ก์ ํธ์ ์กด์ฌํ๋ ๋ชจ๋ ๋ธ๋์น๋ฅผ ํ์ธ
Merge
git merge ๋ณํฉ์ํค๋ ค๋ ๋ธ๋์น ์ด๋ฆ
-ํน์ ๋ธ๋์น์ ์๋ฃ๋ ์์
์ ๊ธฐ์ค์ด ๋๋ main ๋๋ master ๋ธ๋์น์ ๋ณํฉํ ๋ ์ฌ์ฉํ๋ค.
Remote
git remote add origin ๊นํ ๋ ํ์งํ ๋ฆฌ ์ฃผ์
-๊น๊ณผ ๊นํ์ด ์ฐ๊ฒฐ ์๋ ์ํ์์ remote๋ก ์ฒ์์ ์ฐ๊ฒฐ์์ผ์ผ ํ๋ค.
Push
git push origin ๊นํ ๋ธ๋์น ์ด๋ฆ
-๋ด ๋ก์ปฌ ๋ ํ์งํ ๋ฆฌ์ ์๋ ์ฝ๋๋ฅผ ๊นํ์ ์๋ ๋ ํ์งํ ๋ฆฌ์ ์ฌ๋ฆด ๋ ์ฌ์ฉํ๋ค.
๐ ๋ด๊ฐ ์์
ํ ๊ณณ์์ add/ commit ์ ๋จผ์ ํ๊ณ push
๐ ์ฒ์ ์ฌ๋ฆด ๋๋ remote๋ก ๋ด ๋ก์ปฌ๊ณผ ๊นํ ๋ ํ์งํ ๋ฆฌ๋ฅผ ์ฐ๊ฒฐํ๊ณ push(clone ๋ฐ์ ํ๋ก์ ํธ๊ฐ ์๋๋ผ๋ฉด)
๐ ๋ธ๋์น ์ด๋ฆ์ master/main ์ผ ์๋ ์๊ณ ํน์ ๋ธ๋์น์ผ ์๋ ์์
โ ๋ด ๋ก์ปฌ ๋ ํ์งํ ๋ฆฌ์์ ๊นํ์ ์ฌ๋ฆฌ๊ธฐ

โ ๊นํ์์ ํด๋ก ๋ฐ์ ๋ก์ปฌ ํ๊ฒฝ์์ ํ๋ก์ ํธ ํธ์งํ๊ธฐ

'๐Code' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
Refactoring (0) | 2023.03.19 |
---|