Skip to main content

ํ…œํ”Œ๋ฆฟ์—์„œ codespace ๋งŒ๋“ค๊ธฐ

์ƒˆ ํ”„๋กœ์ ํŠธ๋ฅผ ์‹œ์ž‘ํ•˜๋Š” ๊ฒฝ์šฐ ๋นˆ ํ…œํ”Œ๋ฆฟ์—์„œ codespace๋ฅผ ๋งŒ๋“ค๊ฑฐ๋‚˜ ์ˆ˜ํ–‰ํ•˜๋ ค๋Š” ์ž‘์—… ์œ ํ˜•์— ๋งž๊ฒŒ ์„ค๊ณ„๋œ ํ…œํ”Œ๋ฆฟ์„ ์„ ํƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

GitHub Codespaces ํ…œํ”Œ๋ฆฟ์— ๋Œ€ํ•œ ์ •๋ณด

์ƒˆ ํ”„๋กœ์ ํŠธ๋ฅผ ์‹œ์ž‘ํ•˜๋Š” ๊ฒฝ์šฐ ํ…œํ”Œ๋ฆฟ์—์„œ codespace๋ฅผ ๋งŒ๋“ค์–ด ๊ฐœ๋ฐœ ์ž‘์—…์„ ๋น ๋ฅด๊ฒŒ ์‹œ์ž‘ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํด๋ผ์šฐ๋“œ ๊ธฐ๋ฐ˜ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ์—์„œ ํ”„๋กœ์ ํŠธ๋ฅผ ์ž‘์—…ํ•˜๊ณ , ํŒŒ์ผ์„ ํด๋ผ์šฐ๋“œ์— ์ €์žฅํ•˜๊ณ , ๋‹ค๋ฅธ ์‚ฌ์šฉ์ž์™€ ๊ณต์œ ํ•˜๊ฑฐ๋‚˜ ๋กœ์ปฌ ์ปดํ“จํ„ฐ์— ๋ณต์ œํ•  ์ˆ˜ ์žˆ๋Š” ์ƒˆ ์›๊ฒฉ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์— ์ž‘์—…์„ ๊ฒŒ์‹œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋นˆ ํ…œํ”Œ๋ฆฟ์—์„œ ์‹œ์ž‘ํ•˜๊ฑฐ๋‚˜, React ๋˜๋Š” Jupyter Notebook๊ณผ ๊ฐ™์€ ์ธ๊ธฐ ์žˆ๋Š” ๊ธฐ์ˆ ์— ๋Œ€ํ•ด GitHub์ด(๊ฐ€) ์ œ๊ณตํ•˜๋Š” ํ…œํ”Œ๋ฆฟ์„ ์„ ํƒํ•˜๊ฑฐ๋‚˜, GitHub์˜ ํ…œํ”Œ๋ฆฟ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์—์„œ codespace๋ฅผ ์‹œ์ž‘ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋นˆ ํ…œํ”Œ๋ฆฟ์„ ์‚ฌ์šฉํ•˜๋ฉด ํด๋ผ์šฐ๋“œ ๊ธฐ๋ฐ˜ ์ปดํ“จํŒ… ๋ฆฌ์†Œ์Šค ๋ฐ ๊ธฐ๋ณธ dev ์ปจํ…Œ์ด๋„ˆ ์ด๋ฏธ์ง€์™€ ํ•จ๊ป˜ ๋ฏธ๋ฆฌ ์„ค์น˜๋œ ๋„๊ตฌ, ์–ธ์–ด ๋ฐ ๋Ÿฐํƒ€์ž„ ํ™˜๊ฒฝ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ๋Š” ๋นˆ ๋””๋ ‰ํ„ฐ๋ฆฌ๋กœ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ํ…œํ”Œ๋ฆฟ์„ ์‚ฌ์šฉํ•˜๋ฉด ์ž‘์—… ์ค‘์ธ ๊ธฐ์ˆ ์— ๋Œ€ํ•œ ์‹œ์ž‘ ํŒŒ์ผ๊ณผ ์ผ๋ฐ˜์ ์œผ๋กœ ์ผ๋ถ€ ์‚ฌ์šฉ์ž ์ง€์ • ํ™˜๊ฒฝ ๊ตฌ์„ฑ์ด ํฌํ•จ๋œ ์ถ”๊ฐ€ ์ •๋ณด ํŒŒ์ผ, .gitignore ํŒŒ์ผ ๋ฐ ๊ฐœ๋ฐœ ์ปจํ…Œ์ด๋„ˆ ๊ตฌ์„ฑ ํŒŒ์ผ๊ณผ ๊ฐ™์€ ์ถ”๊ฐ€ ํŒŒ์ผ์„ ์–ป์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐœ๋ฐœ ์ปจํ…Œ์ด๋„ˆ ๋ฐ ๊ธฐ๋ณธ ์ด๋ฏธ์ง€์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ์€ ๊ฐœ๋ฐœ ์ปจํ…Œ์ด๋„ˆ ์†Œ๊ฐœ์„(๋ฅผ) ์ฐธ์กฐํ•˜์„ธ์š”.

์˜ˆ๋ฅผ ๋“ค์–ด GitHub์˜ React ํ…œํ”Œ๋ฆฟ์—์„œ codespace๋ฅผ ๋งŒ๋“œ๋Š” ๊ฒฝ์šฐ ์ž‘์—… ์˜์—ญ์— ๊ฐ„๋‹จํ•œ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์— ๋Œ€ํ•œ ํ…œํ”Œ๋ฆฟ ํŒŒ์ผ(์˜ˆ: index.js, app.js ๋ฐpackage.json)์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. Codespace๊ฐ€ ์—ด๋ฆฐ ์งํ›„ ๊ฐœ๋ฐœ ์„œ๋ฒ„๊ฐ€ ์ž๋™์œผ๋กœ ์‹œ์ž‘๋˜๊ณ  VS Code ์›น ํด๋ผ์ด์–ธํŠธ์˜ ๊ฐ„๋‹จํ•œ ๋ธŒ๋ผ์šฐ์ € ํƒญ์—์„œ ์‹คํ–‰ ์ค‘์ธ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์„ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

GitHub์˜ React ํ…œํ”Œ๋ฆฟ์—์„œ ์›น ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์„ ๋ Œ๋”๋งํ•˜๋Š” VS Code์˜ ๊ฐ„๋‹จํ•œ ๋ธŒ๋ผ์šฐ์ €์— ๋Œ€ํ•œ ์Šคํฌ๋ฆฐ์ƒท

ํ…œํ”Œ๋ฆฟ์— ํฌํ•จ๋œ ํŒŒ์ผ ๋ฐ ๊ตฌ์„ฑ์€ ํ…œํ”Œ๋ฆฟ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์— ์ •์˜๋ฉ๋‹ˆ๋‹ค. Codespace๋ฅผ ๋งŒ๋“ค๋ฉด ํ…œํ”Œ๋ฆฟ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ๊ฐ€ codespace์— ๋ณต์ œ๋ฉ๋‹ˆ๋‹ค. ๊ทธ ํ›„์—๋Š” ๋งํฌ๊ฐ€ ๋Š๊ธฐ๊ณ  ๊ฒŒ์‹œํ•  ๋•Œ๊นŒ์ง€ codespace๊ฐ€ ์›๊ฒฉ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์— ์—ฐ๊ฒฐ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

ํŒ

๋‹ค๋ฅธ ์‚ฌ์šฉ์ž๊ฐ€ ํ”„๋ ˆ์ž„์›Œํฌ, ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋˜๋Š” ๊ธฐํƒ€ ํ”„๋กœ์ ํŠธ๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ ์‹œ์ž‘ํ•  ์ˆ˜ ์žˆ๋„๋ก GitHub Codespaces์— ์‚ฌ์šฉํ•  ํ…œํ”Œ๋ฆฟ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ๋ฅผ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์€ GitHub Codespaces์— ๋Œ€ํ•œ ํ…œํ”Œ๋ฆฟ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ ์„ค์ •์„(๋ฅผ) ์ฐธ์กฐํ•˜์„ธ์š”.

GitHub ํ…œํ”Œ๋ฆฟ์—์„œ codespace ๋งŒ๋“ค๊ธฐ

๋นˆ ํ…œํ”Œ๋ฆฟ์„ ํฌํ•จํ•˜์—ฌ GitHub์— ์˜ํ•ด ๊ด€๋ฆฌ๋˜๋Š” ํ…œํ”Œ๋ฆฟ์„ "๋‚˜์˜ codespace" ํŽ˜์ด์ง€์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  1. GitHub์˜ ์™ผ์ชฝ ์œ„ ๋ชจ์„œ๋ฆฌ์—์„œ ์„(๋ฅผ) ์„ ํƒํ•˜๊ณ  Codespaces๋ฅผ ํด๋ฆญํ•œ ๋‹ค์Œ github.com/codespaces "๋‚ด codespace" ํŽ˜์ด์ง€๋กœ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค.

  2. ํ…œํ”Œ๋ฆฟ์˜ ์ „์ฒด ๋ชฉ๋ก์„ ๋ณด๋ ค๋ฉด "๋น ๋ฅธ ์‹œ์ž‘ ํ…œํ”Œ๋ฆฟ ํƒ์ƒ‰" ์„น์…˜์—์„œ ๋ชจ๋‘ ๋ณด๊ธฐ๋ฅผ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

    "๋น ๋ฅธ ์‹œ์ž‘ ํ…œํ”Œ๋ฆฟ ํƒ์ƒ‰" ์„น์…˜์˜ ์Šคํฌ๋ฆฐ์ƒท์ž…๋‹ˆ๋‹ค. "๋ชจ๋‘ ๋ณด๊ธฐ"๋Š” ์ง„ํ•œ ์ฃผํ™ฉ์ƒ‰ ์œค๊ณฝ์„ ์œผ๋กœ ๊ฐ•์กฐ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.

  3. ํ•„์š”์— ๋”ฐ๋ผ ํ…œํ”Œ๋ฆฟ์˜ ํŒŒ์ผ์ด ํฌํ•จ๋œ ํ…œํ”Œ๋ฆฟ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ๋ฅผ ๋ณด๋ ค๋ฉด ํ…œํ”Œ๋ฆฟ์˜ ์ด๋ฆ„์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

    "๋น ๋ฅธ ์‹œ์ž‘ ํ…œํ”Œ๋ฆฟ ํƒ์ƒ‰" ์„น์…˜์˜ ์Šคํฌ๋ฆฐ์ƒท์ž…๋‹ˆ๋‹ค. ์„ธ ๊ฐ€์ง€์˜ ํ…œํ”Œ๋ฆฟ์ด ๋‚˜์—ด๋ฉ๋‹ˆ๋‹ค. ํ…œํ”Œ๋ฆฟ ์ด๋ฆ„์€ ์ฃผํ™ฉ์ƒ‰ ์œค๊ณฝ์„ ์œผ๋กœ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.

  4. ์‹œ์ž‘ํ•˜๋ ค๋Š” ํ…œํ”Œ๋ฆฟ์˜ ์ด๋ฆ„ ์•„๋ž˜์—์„œ ์ด ํ…œํ”Œ๋ฆฟ ์‚ฌ์šฉ์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

ํ…œํ”Œ๋ฆฟ์—์„œ ์ƒˆ codespace๋ฅผ ๋งŒ๋“ค ๋•Œ ํ•ญ์ƒ Visual Studio Code ์›น ํด๋ผ์ด์–ธํŠธ์—์„œ ์—ด๋ฆฝ๋‹ˆ๋‹ค. ์ง€์›๋˜๋Š” ๋ชจ๋“  ํŽธ์ง‘๊ธฐ์—์„œ ๊ธฐ์กด codespace๋ฅผ ๋‹ค์‹œ ์—ด ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์€ ๊ธฐ์กด Codespace ์—ด๊ธฐ์„(๋ฅผ) ์ฐธ์กฐํ•˜์„ธ์š”.

ํ…œํ”Œ๋ฆฟ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์—์„œ codespace ๋งŒ๋“ค๊ธฐ

ํ…œํ”Œ๋ฆฟ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์—์„œ codespace๋ฅผ ๋งŒ๋“  ๋‹ค์Œ, ์ค€๋น„๊ฐ€ ๋˜๋ฉด ์ƒˆ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์— ์ž‘์—…์„ ๊ฒŒ์‹œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ…œํ”Œ๋ฆฟ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ์€ ํ…œํ”Œ๋ฆฟ์—์„œ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ ๋งŒ๋“ค๊ธฐ์„(๋ฅผ) ์ฐธ์กฐํ•˜์„ธ์š”.

  1. GitHub์—์„œ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์˜ ๊ธฐ๋ณธ ํŽ˜์ด์ง€๋กœ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค.

  2. ์ด ํ…œํ”Œ๋ฆฟ ์‚ฌ์šฉ์„ ํด๋ฆญํ•œ ๋‹ค์Œ, codespace์—์„œ ์—ด๊ธฐ๋ฅผ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

    "์ด ํ…œํ”Œ๋ฆฟ ์‚ฌ์šฉ" ๋‹จ์ถ”์™€ "codespace์—์„œ ์—ด๊ธฐ" ์˜ต์…˜์„ ํ‘œ์‹œํ•˜๋„๋ก ํ™•์žฅ๋œ ๋“œ๋กญ๋‹ค์šด ๋ฉ”๋‰ด์˜ ์Šคํฌ๋ฆฐ์ƒท.

    ์ฐธ๊ณ  ํ•ญ๋ชฉ

    ํ…œํ”Œ๋ฆฟ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์˜ ์œ ์ง€ ๊ด€๋ฆฌ์ž์ด๊ณ  ํ…œํ”Œ๋ฆฟ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ ์ž์ฒด์— ๋ณ€๊ฒฝ ๋‚ด์šฉ์„ ์ปค๋ฐ‹ํ•˜๋ ค๋Š” ๊ฒฝ์šฐ Code ๋“œ๋กญ๋‹ค์šด์—์„œ codespace๋ฅผ ๋งŒ๋“ค์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์€ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์— ๋Œ€ํ•œ codespace ๋งŒ๋“ค๊ธฐ์„(๋ฅผ) ์ฐธ์กฐํ•˜์„ธ์š”.

ํ…œํ”Œ๋ฆฟ์—์„œ ์ƒˆ codespace๋ฅผ ๋งŒ๋“ค ๋•Œ ํ•ญ์ƒ Visual Studio Code ์›น ํด๋ผ์ด์–ธํŠธ์—์„œ ์—ด๋ฆฝ๋‹ˆ๋‹ค. ์ง€์›๋˜๋Š” ๋ชจ๋“  ํŽธ์ง‘๊ธฐ์—์„œ ๊ธฐ์กด codespace๋ฅผ ๋‹ค์‹œ ์—ด ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์€ ๊ธฐ์กด Codespace ์—ด๊ธฐ์„(๋ฅผ) ์ฐธ์กฐํ•˜์„ธ์š”.

GitHub์˜ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์— ๊ฒŒ์‹œ ์ค‘

ํ…œํ”Œ๋ฆฟ์—์„œ ๋งŒ๋“  ์ฝ”๋“œ์ŠคํŽ˜์ด์Šค์—์„œ ์ž‘์—…ํ•˜๋Š” ๊ฒฝ์šฐ ์ž‘์—…์€ ํด๋ผ์šฐ๋“œ์˜ ๊ฐ€์ƒ ๋จธ์‹ ์— ์ €์žฅ๋˜์ง€๋งŒ GitHub์˜ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์— ์ €์žฅ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

ํŒŒ์ผ์„ ์ €์žฅํ•˜๊ณ , codespace๋ฅผ ๋‹ซ๊ณ  ์ค‘์ง€ํ•˜๊ณ , ๋‚˜์ค‘์— ์ž‘์—…์œผ๋กœ ๋Œ์•„๊ฐˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ผ๋ฐ˜์ ์œผ๋กœ Git์€ ๋ฏธ๋ฆฌ ์„ค์น˜๋˜๋ฉฐ ์ž‘์—… ๋””๋ ‰ํ„ฐ๋ฆฌ๋Š” GitHub์˜ ๋นˆ ํ…œํ”Œ๋ฆฟ์—์„œ ์‹œ์ž‘ํ•˜์ง€ ์•Š๋Š” ํ•œ Git ๋ฆฌํฌ์ง€ํ† ๋ฆฌ๋กœ ์ž๋™ ์ดˆ๊ธฐํ™”๋ฉ๋‹ˆ๋‹ค. ์ฆ‰, ํŒŒ์ผ ์ถ”๊ฐ€ ๋ฐ ์ปค๋ฐ‹๊ณผ ๊ฐ™์€ ๋กœ์ปฌ ์›๋ณธ ์ œ์–ด์— Git์„ ์ฆ‰์‹œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ทธ๋Ÿฌ๋‚˜ ๊ฒŒ์‹œ๋˜์ง€ ์•Š์€ codespace๋ฅผ ์‚ญ์ œํ•˜๊ฑฐ๋‚˜ ๋ณด์กด ๊ธฐ๊ฐ„ ๋™์•ˆ ์‚ฌ์šฉ๋˜์ง€ ์•Š์€ ์ƒํƒœ๋กœ ์œ ์ง€๋˜์–ด ์ž๋™์œผ๋กœ ์‚ญ์ œ๋˜๋Š” ๊ฒฝ์šฐ, ์ž‘์—…๋„ ์‚ญ์ œ๋ฉ๋‹ˆ๋‹ค. ์ž‘์—…์„ ์ง€์†ํ•˜๊ณ  ๋‹ค๋ฅธ ์‚ฌ์šฉ์ž๊ฐ€ ํ”„๋กœ์ ํŠธ์—์„œ ์ž‘์—…ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋ ค๋ฉด GitHub์˜ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์— codespace๋ฅผ ๊ฒŒ์‹œํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ  ํ•ญ๋ชฉ

๊ฒŒ์‹œ๋˜์ง€ ์•Š์€ codespace๊ฐ€ ํ˜„์žฌ ์กฐ์ง์— ์ฒญ๊ตฌ๋˜๋Š” ๊ฒฝ์šฐ, codespace๋ฅผ ๊ฒŒ์‹œํ•˜๋ฉด codespace์˜ ์†Œ์œ ๊ถŒ๊ณผ ์ฒญ๊ตฌ๊ฐ€ ๊ฐœ์ธ ๊ณ„์ •์œผ๋กœ ์ „์†ก๋ฉ๋‹ˆ๋‹ค. GitHub Codespaces ์ฒญ๊ตฌ์„(๋ฅผ) ์ฐธ์กฐํ•˜์„ธ์š”.

VS Code์—์„œ ๊ฒŒ์‹œ

codespace์—์„œ ์ž‘์—…ํ•˜๋Š” ๊ฒฝ์šฐ VS Code ์›น ํด๋ผ์ด์–ธํŠธ ๋˜๋Š” ๋ฐ์Šคํฌํ†ฑ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ ๊ฒŒ์‹œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  1. ์ž‘์—… ํ‘œ์‹œ์ค„์—์„œ Source Control(์›๋ณธ ์ œ์–ด) ๋ณด๊ธฐ๋ฅผ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

    ์†Œ์Šค ์ œ์–ด ๋‹จ์ถ”๊ฐ€ ์ฃผํ™ฉ์ƒ‰ ์œค๊ณฝ์„ ์œผ๋กœ ๊ฐ•์กฐ ํ‘œ์‹œ๋œ VS Code ์ž‘์—… ํ‘œ์‹œ์ค„์˜ ์Šคํฌ๋ฆฐ์ƒท.

  2. ๋ณ€๊ฒฝ ๋‚ด์šฉ์„ ์Šคํ…Œ์ด์ง•ํ•˜๋ ค๋ฉด ์ถ”๊ฐ€ํ•˜๊ฑฐ๋‚˜ ๋ณ€๊ฒฝํ•œ ํŒŒ์ผ ์˜†์˜ + ๋ฅผ ํด๋ฆญํ•˜๊ฑฐ๋‚˜ ์—ฌ๋Ÿฌ ํŒŒ์ผ์„ ๋ณ€๊ฒฝํ•˜๊ณ  ๋ชจ๋‘ ์Šคํ…Œ์ด์ง•ํ•˜๋ ค๋Š” ๊ฒฝ์šฐ ๋ณ€๊ฒฝ ์‚ฌํ•ญ ์˜†์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

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

    ์ฐธ๊ณ  ํ•ญ๋ชฉ

    GitHub์˜ ๋นˆ ํ…œํ”Œ๋ฆฟ์—์„œ ์‹œ์ž‘ํ•˜๋Š” ๊ฒฝ์šฐ ๋””๋ ‰ํ„ฐ๋ฆฌ๋ฅผ Git ๋ฆฌํฌ์ง€ํ† ๋ฆฌ๋กœ ์ด๋ฏธ ์ดˆ๊ธฐํ™”ํ•˜์ง€ ์•Š์€ ํ•œ ๋ณ€๊ฒฝ ๋‚ด์šฉ ๋ชฉ๋ก์ด ํ‘œ์‹œ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋นˆ ํ…œํ”Œ๋ฆฟ์—์„œ ๋งŒ๋“  codespace๋ฅผ ๊ฒŒ์‹œํ•˜๋ ค๋ฉด "์†Œ์Šค ์ œ์–ด" ๋ณด๊ธฐ์—์„œ GitHub์— ๊ฒŒ์‹œ๋ฅผ ํด๋ฆญํ•œ ๋‹ค์Œ 5๋‹จ๊ณ„๋กœ ๊ฑด๋„ˆ๋œ๋‹ˆ๋‹ค.

  3. ์Šคํ…Œ์ด์ง•๋œ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ์ปค๋ฐ‹ํ•˜๋ ค๋ฉด ๋ณ€๊ฒฝ ๋‚ด์šฉ์„ ์„ค๋ช…ํ•˜๋Š” ์ปค๋ฐ‹ ๋ฉ”์‹œ์ง€๋ฅผ ์ž…๋ ฅํ•œ ๋‹ค์Œ ์ปค๋ฐ‹์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

    ์ปค๋ฐ‹ ๋ฉ”์‹œ์ง€๊ฐ€ ์žˆ๋Š” "์†Œ์Šค ์ œ์–ด" ์‚ฌ์ด๋“œ๋ฐ”์˜ ์Šคํฌ๋ฆฐ์ƒท๊ณผ ๊ทธ ์•„๋ž˜์—๋Š” ์ง„ํ•œ ์ฃผํ™ฉ์ƒ‰ ์œค๊ณฝ์„ ์ด ๊ฐ•์กฐ ํ‘œ์‹œ๋œ "์ปค๋ฐ‹" ๋‹จ์ถ”๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

  4. ๋ถ„๊ธฐ ๊ฒŒ์‹œ๋ฅผ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

    "๋ถ„๊ธฐ ๊ฒŒ์‹œ" ๋‹จ์ถ”๋ฅผ ๋ณด์—ฌ ์ฃผ๋Š” "์†Œ์Šค ์ œ์–ด" ์‚ฌ์ด๋“œ๋ฐ”์˜ ์Šคํฌ๋ฆฐ์ƒท.

  5. "๋ฆฌํฌ์ง€ํ† ๋ฆฌ ์ด๋ฆ„" ๋“œ๋กญ๋‹ค์šด์—์„œ ์ƒˆ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์˜ ์ด๋ฆ„์„ ์ž…๋ ฅํ•œ ๋‹ค์Œ GitHub ํ”„๋ผ์ด๋น— ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์— ๊ฒŒ์‹œ๋ฅผ ์„ ํƒํ•˜๊ฑฐ๋‚˜ GitHub ํผ๋ธ”๋ฆญ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ ๊ฒŒ์‹œ๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

    VS Code์˜ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ ์ด๋ฆ„ ๋“œ๋กญ๋‹ค์šด ์Šคํฌ๋ฆฐ์ƒท. ๊ฐœ์ธ์šฉ ๋˜๋Š” ๊ณต์šฉ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์— ๊ฒŒ์‹œํ•˜๋Š” ๋‘ ๊ฐ€์ง€ ์˜ต์…˜์ด ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.

    ์ƒˆ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์˜ ์†Œ์œ ์ž๋Š” codespace๋ฅผ ๋งŒ๋“  GitHub ๊ณ„์ •์ด ๋ฉ๋‹ˆ๋‹ค.

  6. ํ•„์š”์— ๋”ฐ๋ผ ํŽธ์ง‘๊ธฐ์˜ ์˜ค๋ฅธ์ชฝ ์•„๋ž˜ ๋ชจ์„œ๋ฆฌ์— ๋‚˜ํƒ€๋‚˜๋Š” ํŒ์—…์—์„œ GitHub์—์„œ ์—ด๊ธฐ๋ฅผ ํด๋ฆญํ•˜์—ฌ GitHub์—์„œ ์ƒˆ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ๋ฅผ ๋ด…๋‹ˆ๋‹ค.

    "GitHub์—์„œ ์—ด๊ธฐ" ๋‹จ์ถ”๋ฅผ ๋ณด์—ฌ ์ฃผ๋Š” ์„ฑ๊ณต์ ์œผ๋กœ ๊ฒŒ์‹œ๋œ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์— ๋Œ€ํ•œ ํ™•์ธ ๋ฉ”์‹œ์ง€์˜ ์Šคํฌ๋ฆฐ์ƒท.

Codespace๊ฐ€ ๊ฒŒ์‹œ๋˜๋ฉด GitHub Codespaces ํ™˜๊ฒฝ์„ ์‚ฌ์šฉ์ž ์ง€์ •ํ•  ์ˆ˜ ์žˆ๋Š” ๋‹ค์–‘ํ•œ ์˜ต์…˜์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ์‹œ์ž‘ํ•  ์ˆ˜ ์žˆ๋Š” ์ž‘์—…์˜ ์˜ˆ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

GitHub์—์„œ ๊ฒŒ์‹œ

๊ฒŒ์‹œํ•˜์ง€ ์•Š์€ codespace๋Š” GitHub์˜ "๋‚˜์˜ codespace" ํŽ˜์ด์ง€์—์„œ ๊ฒŒ์‹œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๊ธฐ๋Šฅ์€ ํ˜„์žฌ ๋ธŒ๋ผ์šฐ์ €์—์„œ ์—ด๋ ค ์žˆ์ง€ ์•Š์€ codespace๋ฅผ ๊ฒŒ์‹œํ•˜๋ ค๋Š” ๊ฒฝ์šฐ์— ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ์ž‘์—…์ด ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์— ์œ ์ง€๋˜์ง€๋งŒ ๊ธฐ์กด codespace์™€ ์ƒˆ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ๊ฐ€ ์—ฐ๊ฒฐ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์ƒˆ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ๋กœ ์ด๋™ํ•˜์—ฌ ํ•ด๋‹น ์œ„์น˜์—์„œ codespace๋ฅผ ๋งŒ๋“ค ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์ด codespace๋Š” ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์— ์—ฐ๊ฒฐ๋ฉ๋‹ˆ๋‹ค.

  1. GitHub์˜ ์™ผ์ชฝ ์œ„ ๋ชจ์„œ๋ฆฌ์—์„œ ์„(๋ฅผ) ์„ ํƒํ•˜๊ณ  Codespaces๋ฅผ ํด๋ฆญํ•œ ๋‹ค์Œ github.com/codespaces "๋‚ด codespace" ํŽ˜์ด์ง€๋กœ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค.

  2. ๊ฒŒ์‹œ๋˜์ง€ ์•Š์€ codespace ์˜†์— ์žˆ๋Š” ์ค„์ž„ํ‘œ(...)๋ฅผ ํด๋ฆญํ•œ ๋‹ค์Œ ์ƒˆ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์— ๊ฒŒ์‹œ๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

    "์ƒˆ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์— ๊ฒŒ์‹œ" ์˜ต์…˜์„ ๋ณด์—ฌ ์ฃผ๋Š” codespace์˜ ๋“œ๋กญ๋‹ค์šด ๋ฉ”๋‰ด ์Šคํฌ๋ฆฐ์ƒท

  3. ์ƒˆ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์˜ ์ด๋ฆ„์„ ์„ ํƒํ•˜๊ณ , ๊ณต์šฉ ๋˜๋Š” ๊ฐœ์ธ์šฉ์œผ๋กœ ์„ค์ •ํ•œ ๋‹ค์Œ, ๋ฆฌํฌ์ง€ํ† ๋ฆฌ ๋งŒ๋“ค๊ธฐ๋ฅผ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

    "์ด๋ฆ„" ํ•„๋“œ, "๊ณต์šฉ" ๋ฐ "๊ฐœ์ธ์šฉ" ์˜ต์…˜ ๋ฐ "๋ฆฌํฌ์ง€ํ† ๋ฆฌ ๋งŒ๋“ค๊ธฐ" ๋‹จ์ถ”๊ฐ€ ์žˆ๋Š” "์ƒˆ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์— ๊ฒŒ์‹œ" ๋“œ๋กญ๋‹ค์šด ๋ฉ”๋‰ด์˜ ์Šคํฌ๋ฆฐ์ƒท.

  4. ํ•„์š”์— ๋”ฐ๋ผ ์ƒˆ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ๋ฅผ ๋ณด๋ ค๋ฉด ๋ฆฌํฌ์ง€ํ† ๋ฆฌ ๋ณด๊ธฐ๋ฅผ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

์ถ”๊ฐ€ ์ฐธ๊ณ  ์ž๋ฃŒ