Git ๊ธฐ์ด ๋ช ๋ น์ด ์ฌ์ฉ๋ฒ: ๊น์ ๊ธฐ๋ณธ์ ์ฝ๊ณ ๋น ๋ฅด๊ฒ ๋ฐฐ์ฐ๊ธฐ ๐ฑ
๋ฒ์ ๊ด๋ฆฌ์ ์์์ ๋ฐ๋ก Git! ์ด๋ณด ๊ฐ๋ฐ์๋ถํฐ ์๋ จ๋ ๊ฐ๋ฐ์๊น์ง ํ์์ ์ผ๋ก ์ฌ์ฉํ๋ Git์ ๊ธฐ์ด ๋ช
๋ น์ด ๋ฅผ ๋ค๋ฃจ์ด๋ณด๊ฒ ์ต๋๋ค.
git init
์ผ๋ก ์๋ก์ด ์ ์ฅ์๋ฅผ ์์ํ๊ณ ,
git add
์
git commit
์ ํตํด ๋ณ๊ฒฝ ์ฌํญ์ ์ ์ฅํ๋ฉฐ,
git status
์
git log
๋ฅผ ํตํด ํ์ฌ ์ํ๋ฅผ ํ์ธํ๋ ๋ฐฉ๋ฒ์ ์ฝ๊ฒ ์ค๋ช
ํ๊ฒ ์ต๋๋ค.
1. Git ๊ธฐ์ด ๋ช ๋ น์ด ์์๋ณด๊ธฐ
Git์ ๋ฐฐ์ฐ๋ ค๋ฉด ๊ธฐ๋ณธ ๋ช ๋ น์ด์ ์ญํ ๊ณผ ์ฌ์ฉ ๋ฐฉ๋ฒ ์ ์ ์ดํดํ๋ ๊ฒ์ด ์ค์ํฉ๋๋ค. Git์ ๊ธฐ๋ณธ์ ์ธ ํ๋ฆ์ ์๋ ํ๋ฅผ ํตํด ์ดํด๋ณด๊ฒ ์ต๋๋ค.
๋ช ๋ น์ด | ์ญํ | ์ค๋ช |
---|---|---|
git init
|
์๋ก์ด Git ์ ์ฅ์ ์์ฑ | ํ๋ก์ ํธ ํด๋๋ฅผ Git์ผ๋ก ๊ด๋ฆฌํ๊ธฐ ์์ํฉ๋๋ค. |
git add
|
๋ณ๊ฒฝ๋ ํ์ผ์ ์คํ ์ด์ง์ ์ถ๊ฐ | ์ปค๋ฐ ์ ์ค๋น ์ํ๋ก ํ์ผ์ ์คํ ์ด์ง์ ์ถ๊ฐ |
git commit
|
๋ณ๊ฒฝ ์ฌํญ์ ์ ์ฅ์์ ์ปค๋ฐ | ๋ณ๊ฒฝ ์ฌํญ์ ์ ์ฅํ๊ณ ์ด๋ ฅ์ ๋จ๊น๋๋ค. |
git status
|
ํ์ฌ ์ํ ํ์ธ | ํ์ผ ๋ณ๊ฒฝ ์ฌํญ๊ณผ ์คํ ์ด์ง ์ํ๋ฅผ ํ์ธํฉ๋๋ค. |
git log
|
์ปค๋ฐ ์ด๋ ฅ ํ์ธ | ์ ์ฅ์์ ๋ชจ๋ ์ปค๋ฐ ์ด๋ ฅ์ ํ์ธํฉ๋๋ค. |
์ด์ ๊ฐ ๋ช ๋ น์ด๋ฅผ ๊ตฌ์ฒด์ ์ผ๋ก ๋ค๋ค๋ณด๋ฉฐ ์ฌ์ฉ๋ฒ๊ณผ ์์๋ฅผ ์ดํด๋ณด๊ฒ ์ต๋๋ค.
2.
git init
์ผ๋ก ์๋ก์ด ์ ์ฅ์ ์์ํ๊ธฐ
Git ์ ์ฅ์๋ฅผ ์์ํ๋ ค๋ฉด ๋จผ์ ํ๋ก์ ํธ ํด๋๋ฅผ ์ค์ ํ๊ณ
git init
๋ช
๋ น์ด๋ฅผ ์คํํฉ๋๋ค.
mkdir MyProject
cd MyProject
git init
์ ๋ช
๋ น์ด๋ ์๋ก์ด ํด๋๋ฅผ ์์ฑ ํ๊ณ , Git ์ ์ฅ์๋ฅผ ์ด๊ธฐํํ์ฌ ํ์ฌ ํด๋๋ฅผ Git์ด ์ถ์ ํ ์ ์๋๋ก ๋ง๋ญ๋๋ค.
git init
์ ์คํํ ํ,
.git
์ด๋ผ๋ ์จ๊น ํด๋๊ฐ ์์ฑ๋๋ฉฐ, ์ด ํด๋ ์์ Git์ด ์ถ์ ํ ๋ชจ๋ ์ ๋ณด๊ฐ ์ ์ฅ๋ฉ๋๋ค.
Tip : ์ด๋ฏธ ์กด์ฌํ๋ ํ๋ก์ ํธ์ Git์ ์ ์ฉํ๋ ค๋ฉด ํด๋น ํ๋ก์ ํธ ํด๋๋ก ์ด๋ํ ํ
git init
์ ์คํํ๋ฉด ๋ฉ๋๋ค.
3.
git add
์
git commit
์ผ๋ก ๋ณ๊ฒฝ ์ฌํญ ์ ์ฅํ๊ธฐ
ํ๋ก์ ํธ์์ ํ์ผ์ ์์ฑํ๊ฑฐ๋ ์์ ํ ํ, Git์ ์๋์ผ๋ก ํ์ผ์ ์ถ์ ํ์ง ์์ต๋๋ค . ์ด๋
git add
๋ฅผ ์ฌ์ฉํ์ฌ ๋ณ๊ฒฝ๋ ํ์ผ์ ์คํ
์ด์ง ์ ์ฌ๋ฆฌ๊ณ ,
git commit
์ผ๋ก ์ปค๋ฐํ์ฌ ์ด๋ ฅ์ ๋จ๊น๋๋ค.
git add
์ฌ์ฉ ์์
git add myfile.txt
์ ๋ช
๋ น์ด๋
myfile.txt
ํ์ผ์ ์คํ
์ด์ง์ ์ถ๊ฐํ์ฌ, ๋ค์ ์ปค๋ฐ์ ํฌํจ๋๋๋ก ์ค๋น์ํต๋๋ค.
git add .
git add .
์ ํ์ฌ ํด๋ ๋ด ๋ชจ๋ ๋ณ๊ฒฝ ์ฌํญ ์ ์คํ ์ด์ง์ ์ถ๊ฐํฉ๋๋ค.
git commit
์ฌ์ฉ ์์
git commit -m "์ด๊ธฐ ํ์ผ ์ถ๊ฐ"
-m
์ต์ ์ ์ฌ์ฉํ์ฌ ์ปค๋ฐ ๋ฉ์์ง ๋ฅผ ์ถ๊ฐํฉ๋๋ค. ์ปค๋ฐ ๋ฉ์์ง๋ ๋์ค์ ์ด๋ ฅ์ ํ์ธํ ๋ ์ด๋ค ๋ณ๊ฒฝ์ด ์์๋์ง ์ค๋ช ํด์ฃผ๋ ์ค์ํ ์์์ ๋๋ค.
์ค์ ์ฌ์ฉ ์์ : ํ๋ก์ ํธ ์ด๊ธฐ์ ๋ค์ํ ํ์ผ์ ํ ๋ฒ์ ์ถ๊ฐํ ๋
git add .
์
git commit
์ ์ฐ์ด์ด ์ฌ์ฉํฉ๋๋ค.
4.
git status
์
git log
๋ก ์ํ ํ์ธํ๊ธฐ
์์
์ค ํ์ฌ ์ํ๋ฅผ ํ์ธํ๋ ค๋ฉด
git status
๋ฅผ, ์ปค๋ฐ ์ด๋ ฅ์ ํ์ธํ๋ ค๋ฉด
git log
๋ช
๋ น์ด๋ฅผ ์ฌ์ฉํฉ๋๋ค.
git status
์ฌ์ฉ ์์
git status
์ด ๋ช ๋ น์ด๋ ์คํ ์ด์ง ์ํ์ ๋ณ๊ฒฝ๋ ํ์ผ ๋ชฉ๋ก ์ ๋ณด์ฌ์ค๋๋ค. ํ์ฌ ์คํ ์ด์ง์ ์ถ๊ฐ๋ ํ์ผ, ์์ง ์ถ์ ๋์ง ์์ ํ์ผ ๋ฑ์ด ํ์๋ฉ๋๋ค. ์ด๋ฅผ ํตํด ์ปค๋ฐ ์ ์ํ๋ฅผ ํ์ธํ ์ ์์ต๋๋ค.
git log
์ฌ์ฉ ์์
git log
git log
๋ช
๋ น์ด๋ ํ์ฌ ์ ์ฅ์์ ๋ชจ๋ ์ปค๋ฐ ์ด๋ ฅ ์ ํ์ธํ ์ ์์ต๋๋ค. ์ปค๋ฐํ ์ฌ๋, ๋ ์ง, ์ปค๋ฐ ๋ฉ์์ง ๋ฑ์ ํ์ธํ ์ ์์ด, ํ๋ก์ ํธ์ ํ์คํ ๋ฆฌ๋ฅผ ์ฝ๊ฒ ํ์
ํ ์ ์์ต๋๋ค.
Tip :
git log --oneline
์ต์
์ ์ฌ์ฉํ๋ฉด ๊ฐ ์ปค๋ฐ์ ํ ์ค๋ก ๊ฐ๋จํ๊ฒ ํ์ธํ ์ ์์ต๋๋ค.
git log --oneline
์ ๋ช ๋ น์ด๋ ์ปค๋ฐ ์ด๋ ฅ์ ํ ์ค๋ก ์์ฝํด ๋ณด์ฌ์ฃผ์ด, ๋น ๋ฅด๊ฒ ์ปค๋ฐ ๋ด์ญ์ ํ์ธํ ๋ ์ ์ฉํฉ๋๋ค.
Git ๊ธฐ์ด ๋ช ๋ น์ด ์ฌ์ฉ ๋น๋์ ํธ๋ ๋ ๐
Git์ ์ ์ธ๊ณ ๊ฐ๋ฐ์๋ค์ด ๋๋ฆฌ ์ฌ์ฉํ๋ฉฐ, GitHub ํต๊ณ์ ๋ฐ๋ฅด๋ฉด ๋งค์ผ ์๋ฐฑ๋ง ๊ฑด ์ด์์ ์ปค๋ฐ ์ด ์ด๋ฃจ์ด์ง๊ณ ์์ต๋๋ค. ํนํ
git init
,
git add
,
git commit
์ ํ์์ ์ธ ๋ช
๋ น์ด๋ก, ๋ชจ๋ ๊ฐ๋ฐ์๋ค์ด ํ๋ก์ ํธ ์ด๊ธฐ์ ๋ฐ๋์ ์ฌ์ฉํ๊ฒ ๋ฉ๋๋ค.
FAQ ๐ค
Q1.
git init
์ ์ธ์ ์ฌ์ฉํด์ผ ํ๋์?
A1.
git init
์ ์ ํ๋ก์ ํธ๋ฅผ ์์ํ ๋ ๋๋ ๊ธฐ์กด ํ๋ก์ ํธ๋ฅผ Git์ผ๋ก ๊ด๋ฆฌํ๊ณ ์ ํ ๋ ์ฌ์ฉํฉ๋๋ค.
Q2.
git add
์
git commit
์ ์ฐจ์ด์ ์ ๋ฌด์์ธ๊ฐ์?
A2.
git add
๋ ๋ณ๊ฒฝ ์ฌํญ์ ์คํ
์ด์ง์ ์ฌ๋ ค ์ปค๋ฐ ์ค๋น๋ฅผ ํ๊ณ ,
git commit
์ ์คํ
์ด์ง์ ์ฌ๋ฆฐ ๋ณ๊ฒฝ ์ฌํญ์ ์ปค๋ฐํ์ฌ ๋ฒ์ ์ด๋ ฅ์ ๋จ๊น๋๋ค.
Q3.
git status
๋ ์ธ์ ์ฌ์ฉํ๋์?
A3.
git status
๋ ํ์ฌ ๋ณ๊ฒฝ๋ ํ์ผ ์ํ๋ฅผ ํ์ธํ์ฌ, ์ถ๊ฐํ๊ฑฐ๋ ์ปค๋ฐํด์ผ ํ ํ์ผ์ด ์๋์ง ํ์ธํ ๋ ์ฌ์ฉํฉ๋๋ค.
Q4.
git log
์์ ํน์ ์ปค๋ฐ๋ง ํ์ธํ๋ ค๋ฉด ์ด๋ป๊ฒ ํ๋์?
A4.
git log --oneline
์ ์ฌ์ฉํ๋ฉด ๊ฐ๋จํ ์์ฝ์ผ๋ก ์ปค๋ฐ ์ด๋ ฅ์ ํ๋์ ํ์ธํ ์ ์์ต๋๋ค.
Q5. ๋ชจ๋ ํ์ผ์ ํ๊บผ๋ฒ์ ์คํ
์ด์ง์ ์ถ๊ฐํ๋ ค๋ฉด ์ด๋ป๊ฒ ํ๋์?
A5.
git add .
๋ช
๋ น์ด๋ฅผ ์ฌ์ฉํ๋ฉด ํ์ฌ ํด๋์ ๋ชจ๋ ํ์ผ์ ์คํ
์ด์ง์ ์ฌ๋ฆด ์ ์์ต๋๋ค.
์ด์ Git์ ๊ธฐ์ด ๋ช ๋ น์ด๋ฅผ ์ดํดํ๊ณ ํ๋ก์ ํธ์ ์ ์ฉํด๋ณด์ธ์! Git์ ํตํด ์์ ์ด๋ ฅ์ ๊ด๋ฆฌํ๊ณ ๋ฒ์ ๊ด๋ฆฌ๋ฅผ ๋ฐฐ์ฐ๋ฉด ํ๋ก์ ํธ์ ํ์ง๊ณผ ์์ฐ์ฑ์ ํฌ๊ฒ ํฅ์์ํฌ ์ ์์ต๋๋ค.
๋๊ธ