๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
FOR SW ENGINEER๐Ÿ‘ฉ‍๐Ÿ’ป/GIT

๊ตญ๋น„์ˆ˜์—… DAY-14 (Git์‚ฌ์šฉ๋ฒ•)

by ์”จ๋‹ˆ 2021. 9. 4.
728x90

์˜ค๋Š˜์€ ๊ตญ๋น„ ์ˆ˜์—… 14์ผ์ฐจ!!

๊ตญ๋น„์ˆ˜์—… ์„ ์ƒ๋‹˜์€ ํ•œ๋‹ฌ๋งˆ๋‹ค ๋ฐ”๋€๋‹ค๊ณ  ๋“ค์—ˆ๋Š”๋ฐ! Java์€๋‹‰๊นŒ์ง€ ๋ฐฐ์šฐ๊ณ  ๊ฐ•์‚ฌ๋‹˜์ด ๋ฐ”๋€Œ์‹ ๋‹ค๊ณ  ํ•˜์…”์„œ

๊ฐ•์‚ฌ๋‹˜์ด ๋ฐ”๋€Œ๊ธฐ ์ „ ๋งˆ์ง€๋ง‰ ์‹œ๊ฐ„์— ์šฐ๋ฆฌ์—๊ฒŒ Java์™ธ์— ์ค‘์š”ํ•œ ๊ฒƒ์„ ๊ฐ€๋ฅด์ณ์ฃผ์‹ ๋‹ค๊ณ  ํ•˜์…จ๋‹ค. 

๊ทธ๊ฒƒ๋ฐ”๋กœ ์ด๋ฒˆ์‹œ๊ฐ„์— ์ •๋ฆฌํ•  GIT!!

 

GIT์€ Like Lion๋™์•„๋ฆฌ๋ฅผ ํ•˜๋ฉฐ RUBY์–ธ์–ด๋ฅผ ๋‹ค๋ฃจ๋ฉด์„œ ๋ฐฐ์šฐ๊ธดํ–ˆ์ง€๋งŒ,,

๊ทธ ์ดํ›„๋กœ ์†์„ ๋Œ€์ง€ ์•Š์•„์„œ ์ •ํ™•ํžˆ ๊ธฐ์–ต์ด ๋‚˜์ง€ ์•Š๋Š”๋‹ค.. ๋˜ํ•œ๋ฒˆ์˜ ์‹ค์ˆ˜!!(?)๋Š” ์—†์–ด์•ผ ํ•˜๋‹ˆ๊นŒ!

์ด๋ฒˆ๊ธฐํšŒ๋ฅผ ์‚ผ์•„ Git์— ๊ด€ํ•œ ์ •๋ฆฌ๋ฅผ ํ•ด๋ณด์•„์•ผ ๊ฒ ๋‹ค!

 

๊ทธ๋Ÿผ Git ์š”์  ์‹œ์ž‘~~!!๐Ÿ™Œ

 

โ–ถ GIT HUB๋ž€?

- ๊นƒ(git)์€ ๊ณตํ†ต์œผ๋กœ ๊ด€๋ฆฌ๋Š” ํ”„๋กœ๊ทธ๋žจ ์†Œ์Šค์ฝ”๋“œ ๊ด€๋ฆฌํ•˜๊ธฐ ์œ„ํ•œ ํ”Œ๋žซํผ์ด๋‹ค.

- GitHub๋ฅผ ํ†ตํ•ด ์‚ฌ๋žŒ๋“ค์ด ์–ด๋””์„œ๋‚˜ ํ”„๋กœ์ ํŠธ ํ•จ๊ป˜ ํ•  ์ˆ˜ ์žˆ์Œ.

 

 

โ–ถ ๊นƒ ์„ค์น˜ ํ›„ ์ตœ์ดˆ ์„ค์ •

โ–ท git ํ”„๋กœ๊ทธ๋žจ ์—ด๊ธฐ

- ์›ํ•˜๋Š” ํŒŒ์ผ์— ๋Œ€๊ณ  ๋งˆ์šฐ์Šค ์šฐํด๋ฆญ -> Git Bash Here๋ˆŒ๋Ÿฌ ํ”„๋กœ๊ทธ๋žจ ์—ด๊ธฐ

 

โ–ท ์‚ฌ์šฉ์ž ์ •๋ณด ์„ค์ •

Git์€ ์ปค๋ฐ‹ํ•  ๋•Œ๋งˆ๋‹ค, ํ˜„์žฌ ์šด์˜์ฒด์ œ์— ์„ค์ • ๋œ ์ •๋ณด๋ฅผ ์‚ฌ์šฉํ•จ.

ํ˜ผ์ž ์‚ฌ์šฉํ•˜๋Š” ์ปดํ“จํ„ฐ๋ผ๋ฉด, ํ•œ๋ฒˆ ์„ ์–ธํ•˜๋ฉด ๋˜์ง€๋งŒ, ๋งค๋ฒˆ ๋‹ค๋ฅธ ํ™˜๊ฒฝ์ด๋ผ๋ฉด ์‚ฌ์šฉ์ž ์ •๋ณด ์„ค์ •

 

- git config --global user.name "๋ณธ์ธ์ด๋ฆ„ ์˜์–ด๋กœ"

- git config --global user.email ๋ณธ์ธ์ด๋ฉ”์ผ

์‚ฌ์šฉ์ž ์ •๋ณด ์„ค์ •

โ–ท ์‚ฌ์šฉ์ž ์ •๋ณด ์„ค์ • ํ™•์ธ

- git config --list

์‚ฌ์šฉ์ž ์ •๋ณด ์„ค์ • ํ™•์ธ
name๊ณผ email์ด ์ž…๋ ฅ๋œ๊ฒƒ์„ ํ™•์ธ

 

โ–ถ ๊นƒ ํ—ˆ๋ธŒ ๋ฒ„์ „์ด ๋˜๊ธฐ๊นŒ์ง€ ๊ฑฐ์ณ๊ฐ€๋Š” ์„ธ๊ฐœ์˜ ๋กœ์ปฌ ๊ณต๊ฐ„

- ์„ธ๊ฐ€์ง€ ๊ธฐ์–ตํ•ด์•ผํ•  ๊ณต๊ฐ„!

- Working Directory(์ž‘์—…๊ณต๊ฐ„), Staging area, Repository(์‹ค์ œ ์ €์žฅ์†Œ)

Working Directory, Staging area, Repository

 

โ–ถ ๊นƒ ๋ช…๋ น์–ด

๋ชจ๋“  ๊นƒ ๋ช…๋ น์–ด๋Š” ์‹œ์ž‘๋˜๊ธฐ ์ „ ํ•ด๋‹น ํด๋”์•ˆ์—์„œ ๋ฒ„์ „๊ด€๋ฆฌ ์‹œ์ž‘ํ•ด์•ผ ํ•จ!

- git init : ๊นƒ ์‹œ์ž‘ (๊นƒ ์‹œ์ž‘ํ• ๋•Œ ๋ฌด์กฐ๊ฑด ์ž…๋ ฅ!)

git init์ž…๋ ฅ

์ฒ˜์Œ ์šฐํด๋ฆญํ–ˆ๋˜ ํŒŒ์ผ๋‚ด์— .gitํŒŒ์ผ ์ƒ๊น€.

 

- git status : ํ˜„์žฌ ๊นƒ ์ƒํƒœ

์ƒˆ๋กœ์šด ํŒŒ์ผ ์ƒ์„ฑ ํ›„
git status ์น˜๋ฉด ๋ณ€๊ฒฝ๋œ ํŒŒ์ผ ๋œธ!

git status๋กœ ํ˜„์žฌ ๊นƒ ์ƒํƒœ ํ™•์ธ

 

- git add ํŒŒ์ผ๋ช… : ํ•ด๋‹น ํŒŒ์ผ Staging Area์— ์ถ”๊ฐ€

Working Directory์— ์žˆ๋Š” ์ˆ˜์ •ํ•œ ํŒŒ์ผ์„ Staging Area์— ์ถ”๊ฐ€์‹œํ‚ด

Staging Area์— ์ถ”๊ฐ€์‹œํ‚ค๊ณ  

git status๋กœ ๊นƒ ์ƒํƒœ๋ฅผ ํ™•์ธํ•˜๋ฉด ํŒŒ์ผ์ด Staging Area์— ๋“ค์–ด๊ฐ„๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Œ.

 

- git rm --cached ํŒŒ์ผ๋ช… : ํ•ด๋‹น ํŒŒ์ผ์„ Staging Area์— ์‚ญ์ œ

rm --cached๋ฅผ ์‚ฌ์šฉํ•ด StagingArea์— ์žˆ๋Š” new_gitํ…์ŠคํŠธ ํŒŒ์ผ ์‚ญ์ œ

 

- git add . : ํŒŒ์ผ์„ ์ „๋ถ€ ๋‹ค ์ถ”๊ฐ€(ํ•œ๋ฒˆ์— Staging Area์— ์ €์žฅ)

ํ…์ŠคํŠธ ํŒŒ์ผ ์ƒˆ๋กญ๊ฒŒ ํ•˜๋‚˜ ์ถ”๊ฐ€ (++new_gitํŒŒ์ผ๋„ Staging Area์—์„œ ์‚ญ์ œ๋œ ์ƒํƒœ)
git status๋กœ ํ˜„์žฌ git์ƒํƒœํ™•์ธ
"git add . "์„ ์‚ฌ์šฉํ•ด์„œ ํŒŒ์ผ ํ•œ๋ฒˆ์— Staging Area๋กœ ์˜ฎ๊น€.

 

- git commit -m "๋ฉ”์‹œ์ง€" : ๊นƒ ๋ ˆํŒŒ์ง€ํ† ๋ฆฌ์— ์ €์žฅ

Staging Area์— ์žˆ๋Š” ํŒŒ์ผ์„ Repository์— ์ €์žฅ

 

- git log : ์ปค๋ฐ‹ ์ดํ›„ ๋ณ€๊ฒฝ ๋กœ๊ทธ ํ™•์ธ

commit์ดํ›„ git logํ™•์ธ

 

- git commit -am "๋ฉ”์‹œ์ง€" : ์ถ”๊ฐ€์™€ ์ปค๋ฐ‹ ๋™์‹œ์— ํ•จ.

new_git๊ณผ second_file์ˆ˜์ •
git์ƒํƒœ ํ™•์ธํ•ด๋ณด๋‹ˆ ํŒŒ์ผ๋“ค ์ˆ˜์ •๋˜์—ˆ๋‹ค๊ณ  ํ™•์ธ๋จ!
commit -am์œผ๋กœ commit๊ณผ Repository์ €์žฅ ๋™์‹œ์—ํ•จ!

 

โ–ถ๊นƒ ์›๊ฒฉ์ €์žฅ์†Œ์— ์ €์žฅ

- Working Directory->Staging Area -> Repository ->์›๊ฒฉ์ €์žฅ์†Œ์— ์ €์žฅ

์ƒˆ๋กœ๋งŒ๋“  ์ €์žฅ์†Œ์˜ ์ฃผ์†Œ(๋ณธ์ธ์˜ ๊นƒ ๊ณ„์ •) ๋ณต์‚ฌ

 

- git remote add origin ๋ณต์‚ฌํ•œ ์ฃผ์†Œ(๋ณธ์ธ์˜ ๊นƒ ๊ณ„์ •) : ์›๊ฒฉ์ €์žฅ์†Œ ์ถ”๊ฐ€

์›๊ฒฉ์ €์žฅ์†Œ ์ถ”๊ฐ€

์•ž์œผ๋กœ ์œ„์—์„œ ์—ฐ๊ฒฐ๋œ origin์›๊ฒฉ์ €์žฅ์†Œ์— ์ €์žฅ๋จ.

 

- git push origin master : ์—ฐ๊ฒฐ๋œ ์›๊ฒฉ ์ €์žฅ์†Œ์— ์ €์žฅ

์›๊ฒฉ์ €์žฅ์†Œ์— push์‹œํ‚ด
์›๊ฒฉ์ €์žฅ์†Œ์— ์ž˜ ์ €์žฅ๋œ๊ฒƒ ํ™•์ธ!

 

 

โ˜… ์š”์•ฝโ˜…

Working Directory์— ์žˆ๋Š” ์ˆ˜์ •๋œ ํŒŒ์ผ์„

๋ณ€๊ฒฝ์‚ฌํ•ญ๋“ค์ค‘ ์‹ค์ œ ์ €์žฅ์†Œ์— ์˜ฌ๋ผ๊ฐˆ ํŒŒ์ผ๋“ค์„ ๊ณจ๋ผ Staging Area์— ์ €์žฅ์‹œํ‚ค๊ณ  

Staging Area์— ์ €์žฅ๋œ ํŒŒ์ผ๋“ค์„ ์‹ค์ œ ์ €์žฅ์†Œ์—” Repository์— ์ €์žฅํ•œ ํ›„์—

์›๊ฒฉ ์ €์žฅ์†Œ Git Site์— ์ €์žฅํ•˜๋Š”๊ฒƒ๊นŒ์ง€ ์„ค๋ช…ํ–ˆ๋‹ค.

 

Working DIrectory โ˜ž Staging Area โ˜ž Repository โ˜ž Git Site

728x90

'FOR SW ENGINEER๐Ÿ‘ฉโ€๐Ÿ’ป > GIT' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

๊ตญ๋น„์ˆ˜์—… DAY-14 (2)(Git์‚ฌ์šฉ๋ฒ•)  (0) 2021.09.05