๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

๐“ก๐“ธ๐“ธ๐“ถ5: ๐’ฆ๐‘œ๐“‡๐‘’๐’ถ ๐’ฐ๐“ƒ๐’พ๐“‹

[Git] ์šฐ๋ถ„ํˆฌ์—์„œ Git ์‚ฌ์šฉํ•˜๊ธฐ

1. ํ„ฐ๋ฏธ๋„ ๊ฐ€์„œ ์›ํ•˜๋Š” ํด๋” ์œ„์น˜์—์„œ mkdir๋กœ ๋‚ด๊ฐ€ ์‚ฌ์šฉํ•  ๋กœ์ปฌ ์ €์žฅ์†Œ ํด๋” ์ƒ์„ฑํ•˜๊ธฐ (git์˜ ์ €์žฅ์†Œ๋กœ ๋“ฑ๋กํ•  ํด๋”์ž„)

2. ๊ทธ ํด๋” ์•ˆ์— ๋“ค์–ด๊ฐ€์„œ git init ๋ช…๋ น์–ด ์ณ์„œ .git ํด๋” ์ƒ์„ฑ

2-2. git status๋กœ ํ˜„์žฌ git ์ƒํƒœ ํ™•์ธ

3. ๊นƒํ—ˆ๋ธŒ ๋“ค์–ด๊ฐ€์„œ ๋ ˆํฌ์ง€ํ† ๋ฆฌ ์ƒ์„ฑ!

4. git remote : ์›๊ฒฉ ์ €์žฅ์†Œ์™€ ๋กœ์ปฌ ์ €์žฅ์†Œ์˜ ์—ฐ๊ฒฐ

 

์šฐ๋ฆฌ๊ฐ€ ๋กœ์ปฌ์— ์ƒ์„ฑํ•œ ๋กœ์ปฌ ์ €์žฅ์†Œ๋ฅผ ๊นƒ ์„œ๋ฒ„์˜ ์›๊ฒฉ ์ €์žฅ์†Œ์™€ ์—ฐ๊ฒฐํ•ด์ค€๋‹ค.

ํ•ด๋‹น ๋กœ์ปฌ ํด๋”์— origin์ด๋ผ๋Š” ์ด๋ฆ„์œผ๋กœ ์›๊ฒฉ ์ €์žฅ์†Œ๋ฅผ ์ถ”๊ฐ€ํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•˜๋ฉด ๋จ

git remote add origin https:github.com/์ด๋ฆ„/๋ ˆํฌ์ง€ํ† ๋ฆฌ์ด๋ฆ„

 

5. git add / git commit 

์šฐ์„  ์„ฑ๊ณต์ ์ธ ์ปค๋ฐ‹์„ ์œ„ํ•ด ์ž„์˜๋กœ ํŒŒ์ผ์„ ํ•˜๋‚˜ ์ƒ์„ฑํ•ด๋ณด์ž.

์ž ์ด์ œ ๋‹ค์‹œ git status๋ฅผ ํ†ตํ•ด ์ƒํƒœ๋ฅผ ์‚ดํŽด๋ณด๋ฉด, example.c ํŒŒ์ผ์ด Untracked files๋ผ๊ณ  ๋œฌ๋‹ค. 

์ด ํŒŒ์ผ์ด tracked ๋˜์–ด git์—์„œ ํŒŒ์ผ์„ ๊ด€๋ฆฌํ•˜๋„๋ก ๋งŒ๋“ค๋ ค๋ฉด, git add๋ฅผ ํ†ตํ•ด track์„ ํ•˜๋„๋ก ๋งŒ๋“ค์–ด ์ค˜์•ผํ•œ๋‹ค.

์ด๋ ‡๊ฒŒ git add๋ฅผ ํ•ด์ฃผ๊ฒŒ ๋˜๋‹ˆ ๋นจ๊ฐ„ ๊ธ€์”จ์—์„œ ์ดˆ๋ก ๊ธ€์”จ๋กœ ๋ฐ”๋€Œ์—ˆ๋‹ค! ์ด์ œ์„œ์•ผ commit์„ ํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋˜์—ˆ๋‹ค! 

์ผ์ผํžˆ ๋ชจ๋“  ํŒŒ์ผ์„ add ํ•˜๊ธฐ ๊ท€์ฐฎ์„ ๋•,

git add .

์„ ์‚ฌ์šฉํ•˜๋ฉด Untracked ํŒŒ์ผ์„ ๋ชจ๋‘ ๋‹ค ์ €์žฅํ•  ์ˆ˜ ์žˆ๋‹ค. 

 

์ด์ œ ๋“œ๋””์–ด ์ฒซ commit์„ ํ•ด๋ณด์ž.

 

git commit -m [์„ค๋ช…]

์ด๋ ‡๊ฒŒ commit์„ ํ•˜๊ฒŒ ๋˜๋ฉด, ํด๋”์˜ ๋ณ€๋™ ์‚ฌํ•ญ์ด ๋กœ์ปฌ ์ €์žฅ์†Œ์— commit๋˜๊ฒŒ ๋œ๋‹ค. 

์ฐธ๊ณ ๋กœ add์™€ commit์„ ๋™์‹œ์— ํ•  ์ˆ˜๋„ ์žˆ๋‹ค. ๊ทธ๋Ÿด ๋•Œ๋Š”

git commit -am [์„ค๋ช…]

์„ ํ•ด์ฃผ๋ฉด ๋œ๋‹ค.

 

 

6. git log

 

git log ๋ช…๋ น์–ด๋ฅผ ํ†ตํ•ด commit๋œ ๋‚ด์—ญ์„ ๋ณผ ์ˆ˜ ์žˆ๋‹ค. 

์ด์ œ commit์„ ์—ฌ๋Ÿฌ ๋ฒˆ ํ•˜๋ฉด ์—ฌ๊ธฐ์— ๊ทธ ๋‚ด์—ญ์ด ์Œ“์ด๋Š” ๊ฒƒ์ด๋‹ค.

git log ํ™”๋ฉด์—์„œ ๋น ์ ธ๋‚˜์˜ค๊ธฐ ์œ„ํ•ด์„œ๋Š” q๋ฅผ ๋ˆŒ๋Ÿฌ์ฃผ๋ฉด ๋œ๋‹ค. 

 

7. git push

๋กœ์ปฌ ์ €์žฅ์†Œ์— commitํ•œ ๋‚ด์—ญ์„ ์›๊ฒฉ ์ €์žฅ์†Œ์— ์ €์žฅํ•ด๋ณด์ž. ๋กœ์ปฌ์—์„œ ์›๊ฒฉ์œผ๋กœ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ์˜ฌ๋ฆฌ๋Š” ๊ฒƒ์„ push๋ผ๊ณ  ํ•œ๋‹ค. 

git push origin master ๋ฅผ ํ†ตํ•ด ํ•  ์ˆ˜ ์žˆ๋‹ค.

origin์€ ์šฐ๋ฆฌ๊ฐ€ ์›๊ฒฉ์ €์žฅ์†Œ ์ด๋ฆ„์œผ๋กœ ์„ค์ •ํ•œ ๊ฒƒ์ด์—ˆ๊ณ , master๋Š” ๋ธŒ๋žœ์น˜์˜ ์ด๋ฆ„์ด๋‹ค.

์–ด๋ผ ๊ทผ๋ฐ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ–ˆ๋‹ค. ์™œ ์ €๋Ÿฌ์ง€

ํ˜น์‹œ remoteํ•  ๋•Œ .git์„ ์•ˆ๋ถ™์—ฌ์„œ ๊ทธ๋Ÿฐ๊ฐ€ ํ•ด์„œ remote remove๋ฅผ ํ•˜๊ณ  ๋‹ค์‹œ remote๋ฅผ ํ•ด๋ดค๋”๋‹ˆ ์•„์ฃผ ์ž˜ ๋œ๋‹ค. 

 

์š”๊ฑด ๋‚ด๊ฐ€ ๋ณด๋ ค๊ณ  ์ €์žฅ