๐ง Git: ์คํ ๋ฆฌ๋ถ
์๊ฐ
Git์ ๊ธฐ์ ๋ด ํ์ ํตํ ํ์ ์ ์ง์ํ๋ ๋ถ์ฐ ๋ฒ์ ๊ด๋ฆฌ ์์คํ ์ ๋๋ค. ๊ฐ๋ฐ์ ํ๊ณผ ์คํ ์์ค ์ํํธ์จ์ด ์ ์ง ๊ด๋ฆฌ์๋ ๊ธฐ๋ณธ์ ์ผ๋ก Git์ ํตํด ํ๋ก์ ํธ๋ฅผ ์ฒ๋ฆฌํ๊ณ ๊ด๋ฆฌํฉ๋๋ค. ๊ฐ๋ฐ์ ๋ฐ DevOps ์์ง๋์ด๋ฅผ ์ํ ์คํ ์์ค ์ํํธ์จ์ด ํดํท์ผ๋ก ๋งค์ฐ ์ ์ฉํฉ๋๋ค.
Git์ ๊ณต์ ์น์ฌ์ดํธ์์ ๋ค์ด๋ก๋ํ ์ค๋น๊ฐ ๋์ด ์์ผ๋ฉฐ Linux, MacOS ๋ฐ Windows์์ ์ฌ์ฉํ ์ ์์ต๋๋ค.
Git ์ค์
๋ค์ ๋ช ๋ น์ด๋ก Git ๋ฒ์ ์ ํ์ธํ์ธ์.
git --version
๋ค์ ๋ช ๋ น์ด๋ก ํ์ฌ ์์ ๋๋ ํ ๋ฆฌ๋ฅผ Git ๋ฆฌํฌ์งํ ๋ฆฌ๋ก ์ด๊ธฐํํฉ๋๋ค.
git init
GitHub ๋๋ GitLab ์ธ์คํด์ค์์ ์ง์ ๋ ๋ฆฌํฌ์งํ ๋ฆฌ์ URL ๋๋ ์๋ฒ ์์น๋ฅผ ์ฌ์ฉํ์ฌ ์๊ฒฉ์ผ๋ก ํธ์คํ ๋๋ Git ๋ฆฌํฌ์งํ ๋ฆฌ์์ ํ๋ก์ ํธ๋ฅผ ๋ณต์ ํฉ๋๋ค.
git clone https://www.github.com/username/repo-name
ํ์ฌ Git ๋๋ ํ ๋ฆฌ์ ์๊ฒฉ ์ ์ฅ์๋ฅผ ํ์ํฉ๋๋ค.
git remote
๊ฐ์
์คํ ์ด์ง๋์ง ์์ ์ถ๊ฐ๋ ํ์ผ๊ณผ ์คํ ์ด์ง๋ ํ์ผ๋ ํฌํจํ์ฌ Git ๋ฆฌํฌ์งํ ๋ฆฌ์ ์ํ๋ฅผ ํ์ธํฉ๋๋ค.
git status
ํ์ฌ ์์ ๋๋ ํ ๋ฆฌ์์ ์ฌ์ฉ ๊ฐ๋ฅํ ๋ชจ๋ ํ์ผ์ ํฌํจํฉ๋๋ค.
git add .
์์ ๋๋ ํ ๋ฆฌ ๋ด์ ์คํ ์ด์ง์์ ํ์ผ์ ์ ๊ฑฐํฉ๋๋ค.
git reset CDI.java
์ปค๋ฐ
๋์ค์ ์ปค๋ฐ์ ์ถ์ ํ ์ ์๋ ์๋ฏธ ์๋ ์ปค๋ฐ ๋ฉ์์ง์ ํจ๊ป ์ค๋น๋ ํ์ผ์ ์ปค๋ฐํฉ๋๋ค.
git commit -m "Added new files"
์ง์
๋ค์ ๋ช ๋ น์ ์ฌ์ฉํ์ฌ ์ฌ์ฉ ๊ฐ๋ฅํ ๋ชจ๋ ํ์ฌ ๋ถ๊ธฐ๋ฅผ ํ์ํฉ๋๋ค.
git branch
์์ ๋๋ ํฐ๋ฆฌ์ ์ ๋ถ๊ธฐ๋ฅผ ๋ง๋ญ๋๋ค.
git branch new-branch
๋ค๋ฅธ ๊ธฐ์กด ๋ถ๊ธฐ๋ก ์ ํํ๊ณ ํ์ฌ ์์ ๋๋ ํ ๋ฆฌ๋ก ์ฒดํฌ์์ํฉ๋๋ค.
git checkout another-branch
๋ถ๊ธฐ๋ฅผ ๋ง๋ค๊ณ ํ์ฌ ์์ ๋๋ ํ ๋ฆฌ์ ์ ๋ถ๊ธฐ๋ก ์ ํํฉ๋๋ค.
git checkout -b new-branch
ํน์ ๋ธ๋์น์ ํ์คํ ๋ฆฌ๋ฅผ ํ์ฌ ๋ธ๋์น์ ๋ณํฉํฉ๋๋ค.
git merge branch-name
ํ์ ๋ฐ ์ ๋ฐ์ดํธ
์ถ์ ์๊ฒฉ ๋ถ๊ธฐ์์ ์ปค๋ฐ์ ๊ฐ์ ธ์ ๋ณํฉํฉ๋๋ค.
git pull
๋ก์ปฌ ๋ธ๋์น๋ฅผ ์๊ฒฉ ์ ์ฅ์ ๋ธ๋์น๋ก ํธ์ํฉ๋๋ค.
git push origin main
๊ฒ์ฌ
ํ์ฌ ํ์ฑ ๋ธ๋์น์ ๋ํ ์ปค๋ฐ ํ์คํ ๋ฆฌ๋ฅผ ํ์ํฉ๋๋ค.
git log
Reference
์ด ๋ฌธ์ ์ ๊ดํ์ฌ(๐ง Git: ์คํ ๋ฆฌ๋ถ), ์ฐ๋ฆฌ๋ ์ด๊ณณ์์ ๋ ๋ง์ ์๋ฃ๋ฅผ ๋ฐ๊ฒฌํ๊ณ ๋งํฌ๋ฅผ ํด๋ฆญํ์ฌ ๋ณด์๋ค https://dev.to/orestispantazos/git-the-story-book-9o2ํ ์คํธ๋ฅผ ์์ ๋กญ๊ฒ ๊ณต์ ํ๊ฑฐ๋ ๋ณต์ฌํ ์ ์์ต๋๋ค.ํ์ง๋ง ์ด ๋ฌธ์์ URL์ ์ฐธ์กฐ URL๋ก ๋จ๊ฒจ ๋์ญ์์ค.
์ฐ์ํ ๊ฐ๋ฐ์ ์ฝํ ์ธ ๋ฐ๊ฒฌ์ ์ ๋ (Collection and Share based on the CC Protocol.)
์ข์ ์นํ์ด์ง ์ฆ๊ฒจ์ฐพ๊ธฐ
๊ฐ๋ฐ์ ์ฐ์ ์ฌ์ดํธ ์์ง
๊ฐ๋ฐ์๊ฐ ์์์ผ ํ ํ์ ์ฌ์ดํธ 100์ ์ถ์ฒ ์ฐ๋ฆฌ๋ ๋น์ ์ ์ํด 100๊ฐ์ ์์ฃผ ์ฌ์ฉํ๋ ๊ฐ๋ฐ์ ํ์ต ์ฌ์ดํธ๋ฅผ ์ ๋ฆฌํ์ต๋๋ค