๐Ÿ“’ Study/๐Ÿ–ค Git

Git & Github ๊ธฐ์ดˆ ์™„๋ฒฝํžˆ ๋–ผ๊ธฐ - 1

EarthSea 2024. 3. 9. 11:31

 

 

์•ˆ๋…•ํ•˜์„ธ์š”! ์งธ์ž…๋‹ˆ๋‹ค๐Ÿ™‡๐Ÿป‍โ™€๏ธ

์“ธ๋•Œ๋งˆ๋‹ค ํ—ท๊ฐˆ๋ฆฌ๊ณ  ์ˆœ์„œ ์žŠ์–ด๋ฒ„๋ฆฌ๊ณ ..

๋ช…๋ น์–ด ์ฐพ์•„๋ณด๊ณ ..

์ด์ œ ๊ทธ๊ฑฐ ์•ˆํ• ๋ ต๋‹ˆ๋‹ค!

์˜ค๋Š˜๋ถ€๋กœ Git ๋ช…๋ น์–ด ์•ˆ์ฐพ์•„๋ณผ ์ˆ˜ ์žˆ๋„๋ก ๋งˆ์Šคํ„ฐํ•œ๋‹ค!!

์ด ํฌ์ŠคํŒ…์€ “์˜ˆOO ํŠœํ„ฐ”๋‹˜๊ป˜์„œ ํŠน๊ฐ•ํ•ด์ฃผ์‹  ๋‚ด์šฉ๋“ค์„ ๋ฐ”ํƒ•์œผ๋กœ ์ž‘์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค๐Ÿ‘๐Ÿป

 


 

Git๊ณผ Github๋ž€?

 

Git๊ณผ Github ๊ฐ™์€๊ฑฐ ์•„๋ƒ?!

์•„๋‡จ! ๋‹ค๋ฆ…๋‹ˆ๋‹ค!

 

Git ์ด๋ž€?

์ฝ”๋“œ ๋ณ€๊ฒฝ์ ์„ ๊ธฐ๋กํ•˜๋Š” ๋„๊ตฌ

 

์–ด๋ ค์šด ๋ง๋กœ Git ์€ “๋ฒ„์ „ ๊ด€๋ฆฌ ๋„๊ตฌ” ( ํ˜•์ƒ ๊ด€๋ฆฌ ๋„๊ตฌ ) ๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค. “๋ฒ„์ „๊ด€๋ฆฌ๋„๊ตฌ..?” ๊ทธ๊ฒŒ ๋ญ”๋ฐ! ๋ง์ด ์™œ์ด๋ ‡๊ฒŒ ์–ด๋ ค์›Œ! ์‰ฝ๊ฒŒ ๋งํ•ด์„œ ์ž‘์—…ํ•˜๊ณ  ์žˆ๋Š” ํ”„๋กœ์ ํŠธ( ์†Œํ”„ํŠธ ์›จ์–ด )์˜ ๋ณ€๊ฒฝ์‚ฌํ•ญ์ด ์‹œ๊ฐ„ ์ˆœ์„œ๋Œ€๋กœ ์ •๋ฆฌ๋˜์–ด ๊ธฐ๋ก๋˜๊ณ  ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋„๋ก ๋„์™€์ฃผ๋Š” ๋„๊ตฌ์—์š”.

 

๋‚ด๊ฐ€ ํ”„๋กœ์ ํŠธ๋ฅผ ๋งŒ๋“ค๋ฉด์„œ ์ƒˆ๋กœ ์ ์€ ์ฝ”๋“œ, ์ˆ˜์ •ํ•œ ์ฝ”๋“œ, ์‚ญ์ œํ•œ ์ฝ”๋“œ๊ฐ€ ๋‹ค~~ ๊ธฐ๋ก๋œ๋‹ค๊ณ  ์ƒ๊ฐํ•˜์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค. ๋‚ด๊ฐ€ ์ˆ˜์ •ํ•œ ์‚ฌํ•ญ๋“ค์ด ๊ธฐ๋ก์ด ๋˜์–ด์žˆ์œผ๋‹ˆ๊น ํŒŒ์ผ์„ ์ž˜๋ชป ์ˆ˜์ •ํ•˜์˜€์–ด๋„ ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ•˜๋”๋ผ๋„ ๊ณผ๊ฑฐ์˜ ์ฝ”๋“œ๋กœ ์‰ฝ๊ฒŒ ๋Œ๋ฆด ์ˆ˜๋„ ์žˆ๋Š”๊ฑฐ์ฃ . ๊ทธ ๋•์— ํŒŒ์ผ๊ณผ ํด๋”๋ฅผ ๋”ฐ๋กœ ๋ณต์‚ฌํ•˜์—ฌ ์ง„ํ–‰ํ•˜์ง€ ์•Š์•„๋„ ๋˜๋Š”๊ฑฐ์ฃ !

 

 

๊ทธ๋Ÿผ Github๋Š” ๋ญ”๋ฐ?!?!

 

Github ์ด๋ž€?

์˜จ๋ผ์ธ์— ํŒŒ์ผ์„ ๋ฐฑ์—…ํ•˜๊ณ , ๊ทธ ํŒŒ์ผ์„ ๋‹ค๋ฅธ ์‚ฌ๋žŒ๋“ค๊ณผ ๊ณต์œ ํ•˜๊ณ , ํŒ€๊ณผ ํ˜‘์—…ํ•  ์ˆ˜ ์žˆ๋Š” ํ”„๋กœ๊ทธ๋žจ

 

๊ทธ๋ƒฅ Github๋Š” “๋ฐฑ์—…, ๊ณต์œ , ํ˜‘์—…” ์ด ์„ธ ๋‹จ์–ด๋กœ ์ •๋ฆฌํ•  ์ˆ˜ ์žˆ์–ด์š”! Git์—์„œ ๋‚˜์˜ ์—…๋ฐ์ดํŠธ๊ณผ์ •์„ ๊ธฐ๋กํ–ˆ๋‹ค๋ฉด, ๊ทธ ๊ณผ์ •์„ ์ •๋ฆฌํ•ด์„œ ์˜จ๋ผ์ธ ์ €์žฅ์†Œ์—๋‹ค๊ฐ€ ์—…๋กœ๋“œํ•˜๋Š” ๊ฑฐ์—์š”. ๊ทธ๋Ÿผ ๋‹ค๋ฅธ ์‚ฌ๋žŒ๋“ค๋„ ์–ธ์ œ๋“ ์ง€ ๋‚˜์˜ ์ฝ”๋“œ๋ฅผ ๋ณผ ์ˆ˜ ์žˆ๊ณ  ๋‹ค์šด๋ฐ›์„ ์ˆ˜๋„ ์žˆ์œผ๋ฉฐ, ์ˆ˜์ •๋„ ๊ฐ€๋Šฅํ•œ๊ฑฐ์ฃ !

 

 

 


 

 

 

Git ๋ช…๋ น์–ด ๋ชจ์Œ

 

  • pwd : directory ์ฃผ์†Œ
  • ls directory : ์•ˆ์˜ ํด๋” ๋ฆฌ์ŠคํŠธ
  • ls -a directory : ์•ˆ์˜ ๋ชจ๋“  ํด๋” ๋ฆฌ์ŠคํŠธ ( ์ˆจ๊ฒจ์ง„ ํด๋” )
  • cd ํด๋”๋ช… : repository ๋ณ€๊ฒฝ
  • cd .. : ํ•œ ๋‹จ๊ณ„ ์œ„์˜ repository๋กœ ๋ณ€๊ฒฝ
  • cd ํด๋”๋ช…/ํด๋”๋ช… : ํ•ด๋‹น repository๋กœ ํ•œ๋ฒˆ์— ์ด๋™
  • mkdir ํด๋”๋ช… : ํด๋” ์ƒ์„ฑ
  • touch ํŒŒ์ผ๋ช… : ํŒŒ์ผ ์ƒ์„ฑ

 

 

1. pwd

: print working directory์˜ ์ค„์ž„๋ง๋กœ ์‚ฌ์šฉ์ž๊ฐ€ ์œ„์น˜ํ•ด์žˆ๋Š” directory์˜ ์ฃผ์†Œ๋ฅผ ์•Œ๋ ค์ฃผ๋Š” ๋ช…๋ น์–ด

 

์—ฌ๊ธฐ์„œ directory๋Š” ํด๋”๋ผ๊ณ  ์ƒ๊ฐํ•˜์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค.

print working directory๋ฅผ ํ•ด์„ํ•˜๋ฉด ‘ ๋‚ด๊ฐ€ ์ž‘์—…ํ•˜๊ณ  ์žˆ๋Š” ํด๋”๋ฅผ ๋ณด์—ฌ์ค˜!’ ๋ผ๋Š” ๋œป์ด์—์š”!

 

terminal์— pwd๋ฅผ ์ž…๋ ฅํ•˜๋‹ˆ ์ œ๊ฐ€ ํ˜„์žฌ ์œ„์น˜ํ•˜๊ณ  ์žˆ๋Š” directory๊ฐ€ ๋œจ๋„ค์š”!

 

[ Terminal ์ฐฝ ์—ฌ๋Š” ๋ฐฉ๋ฒ• ]

1. cmd + space → Spotlight ์ฐฝ → terminal ์ž…๋ ฅ → enter

2. Launchpad → ์ƒ๋‹จ ๊ฒ€์ƒ‰์ฐฝ → terminal ์ž…๋ ฅ → terminal ์–ดํ”Œ ํด๋ฆญ

 

 

2. ls

: list์˜ ์ค„์ž„๋ง๋กœ home ์•ˆ์˜ ํด๋” list๋ฅผ ๋ณด์—ฌ์ฃผ๋Š” ๋ช…๋ น์–ด

 

terminal์— ls๋ฅผ ์ž…๋ ฅํ•˜๋‹ˆ ํ˜„์žฌ ์ œ๊ฐ€ ์œ„์น˜ํ•ด์žˆ๋Š” repository์•ˆ์˜ ํด๋”๋ช…์„ ๋ณด์—ฌ์ฃผ๋„ค์š”!

 

 

3. ls -a

: list all์˜ ์ค„์ž„๋ง๋กœ home ์•ˆ์˜ ํด๋” list ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ์ˆจ๊ฒจ์ง„ ํด๋”๊นŒ์ง€ ๋ณด์—ฌ์ฃผ๋Š” ๋ช…๋ น์–ด

 

์œ„์˜ ls์™€๋Š” ๋‹ค๋ฅธ๊ฒŒ ๋ณด์ด์‹œ๋‚˜์š”?!?!

ls ๋ณด๋‹ค ํŒŒ์ผ์–‘์ด ๋” ๋งŽ์•„์กŒ์Šต๋‹ˆ๋‹ค.

๋ณด์‹œ๋ฉด ์•„์‹œ๊ฒ ์ง€๋งŒ ๋ณดํ†ต ์ˆจ๊ฒจ์ง„ ํด๋”๋“ค์€ ์•ž์— ‘.’์ด ๋ถ™์–ด์žˆ์–ด์š”!

 

 

4. cd ํด๋”๋ช…

: change directory ์˜ ์ค„์ž„๋ง๋กœ ํ˜„์žฌ ๋‚ด๊ฐ€ ์œ„์น˜ํ•ด์žˆ๋Š” repository๋ฅผ ๋ณ€๊ฒฝํ•˜๋Š” ๋ช…๋ น์–ด

 

 

cd .. : ํ•œ ๋‹จ๊ณ„ ์œ„์˜ repository๋กœ ์ด๋™

 

cd ํด๋”๋ช…/ํด๋”๋ช… : ํ•ด๋‹น repository๋กœ ํ•œ๋ฒˆ์— ์ด๋“ฑ

ex) cd Desktop/studying-swift

 

 

5. mkdir ํด๋”๋ช…

: make directory์˜ ์ค„์ž„๋ง๋กœ ์›ํ•˜๋Š” ํด๋”๋ฅผ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” ๋ช…๋ น์–ด                                                               

 

ํด๋”๋ฅผ ์ƒ์„ฑํ–ˆ๋Š”๋ฐ, ํด๋”๊ฐ€ ์ƒ๊ธฐ์ง€ ์•Š๊ธธ๋ž˜ ๋ณด๋‹ˆ directory๊ฐ€ desktop์ด ์•„๋‹ˆ๋”๋ผ๊ตฌ์š”!

 

๋ฐ”ํƒ•ํ™”๋ฉด์— ์ƒ์„ฑ๋œ test ํด๋”

cd ๋ช…๋ น์–ด๋กœ ์›ํ•˜๋Š” directory๋กœ ์ด๋™ํ•œ ํ›„์— ๋‹ค์‹œ mkdir ๋ฅผ ์ž…๋ ฅํ•˜์—ฌ ํด๋”๋ฅผ ์ƒ์„ฑํ•ด์ฃผ์—ˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฒˆ์—๋Š” ์ •์ƒ์ ์œผ๋กœ ๋ฐ”ํƒ•ํ™”๋ฉด์— ํด๋”๊ฐ€ ํ•˜๋‚˜ ์ƒ๊ฒผ๋„ค์š”! ๊ผญ ์›ํ•˜๋Š” directory์— ๊ฐ€์…”์„œ ๋ช…๋ น์–ด๋ฅผ ์ž…๋ ฅํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค! ์•„๋‹˜ ์ €์ฒ˜๋Ÿผ ์—‰๋šฑํ•œ ๊ณณ์— ํด๋”๋ฅผ ์„ค์น˜ํ•˜์‹œ๊ฒŒ ๋ ๊ฑฐ์—์š”..ใ…‹ใ…‹

 

 

6. touch ํŒŒ์ผ๋ช…

: ์›ํ•˜๋Š” ํŒŒ์ผ์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” ๋ช…๋ น์–ด

 

์ •ํ™•ํžˆ๋Š” ํŒŒ์ผ์˜ ์ƒ์„ฑ๊ณผ ํŒŒ์ผ์˜ ๋‚ ์งœ, ์‹œ๊ฐ„์„ ๋ณ€๊ฒฝํ•˜๋Š” ๋ช…๋ น์–ด๋ผ touch๋ผ๋Š” ์ด๋ฆ„์ด ๋ถˆ์—ฌ์กŒ๋‹ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค.

์œ„์—์„œ ์ƒ์„ฑํ•œ test ํด๋”๋กœ ์ด๋™ํ•˜์—ฌ touch ๋ช…๋ น์–ด๋ฅผ ์ด์šฉํ•ด swift ํŒŒ์ผ์„ ํ•˜๋‚˜ ์ƒ์„ฑํ•˜์˜€์Šต๋‹ˆ๋‹ค. ์ •์ƒ์ ์œผ๋กœ ์ƒ์„ฑํ•œ ๊ฒƒ์„ ํ™•์ธํ•ด๋ณผ ์ˆ˜ ์žˆ์–ด์š”!

 

 

 


 

 

github์— ๋ ˆํฌ์ง€ํ† ๋ฆฌ๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๊ฒƒ๊ณผ

git add/commit ๋ช…๋ น์–ด๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ๋‹ค์Œ ํฌ์ŠคํŒ…์œผ๋กœ ์ฐพ์•„๋ต™๊ฒ ์Šต๋‹ˆ๋‹ค!