์๋ ํ์ธ์! ์งธ์ ๋๋ค๐๐ปโ๏ธ
์ธ๋๋ง๋ค ํท๊ฐ๋ฆฌ๊ณ ์์ ์์ด๋ฒ๋ฆฌ๊ณ ..
๋ช ๋ น์ด ์ฐพ์๋ณด๊ณ ..
์ด์ ๊ทธ๊ฑฐ ์ํ ๋ ต๋๋ค!
์ค๋๋ถ๋ก 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์ด ์๋๋๋ผ๊ตฌ์!
cd ๋ช ๋ น์ด๋ก ์ํ๋ directory๋ก ์ด๋ํ ํ์ ๋ค์ mkdir ๋ฅผ ์ ๋ ฅํ์ฌ ํด๋๋ฅผ ์์ฑํด์ฃผ์์ต๋๋ค. ์ด๋ฒ์๋ ์ ์์ ์ผ๋ก ๋ฐํํ๋ฉด์ ํด๋๊ฐ ํ๋ ์๊ฒผ๋ค์! ๊ผญ ์ํ๋ directory์ ๊ฐ์ ์ ๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํด์ผํฉ๋๋ค! ์๋ ์ ์ฒ๋ผ ์๋ฑํ ๊ณณ์ ํด๋๋ฅผ ์ค์นํ์๊ฒ ๋ ๊ฑฐ์์..ใ ใ
6. touch ํ์ผ๋ช
: ์ํ๋ ํ์ผ์ ๋ง๋ค ์ ์๋ ๋ช ๋ น์ด
์ ํํ๋ ํ์ผ์ ์์ฑ๊ณผ ํ์ผ์ ๋ ์ง, ์๊ฐ์ ๋ณ๊ฒฝํ๋ ๋ช ๋ น์ด๋ผ touch๋ผ๋ ์ด๋ฆ์ด ๋ถ์ฌ์ก๋ค๊ณ ํฉ๋๋ค.
์์์ ์์ฑํ test ํด๋๋ก ์ด๋ํ์ฌ touch ๋ช ๋ น์ด๋ฅผ ์ด์ฉํด swift ํ์ผ์ ํ๋ ์์ฑํ์์ต๋๋ค. ์ ์์ ์ผ๋ก ์์ฑํ ๊ฒ์ ํ์ธํด๋ณผ ์ ์์ด์!
github์ ๋ ํฌ์งํ ๋ฆฌ๋ฅผ ์์ฑํ๋ ๊ฒ๊ณผ
git add/commit ๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ ๋ค์ ํฌ์คํ ์ผ๋ก ์ฐพ์๋ต๊ฒ ์ต๋๋ค!