Skip to main content

GitHub Copilot์— ๋Œ€ํ•œ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ ์ถ”๊ฐ€

Copilot์ด ํ•ด๋‹น ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์—์„œ ์ˆ˜ํ–‰ํ•˜๋Š” ์ž‘์—…์˜ ์ถ”๊ฐ€์ ์ธ ์ปจํ…์ŠคํŠธ๋ฅผ ์ œ๊ณตํ•˜๋Š” ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์— ํŒŒ์ผ์„ ๋งŒ๋“ญ๋‹ˆ๋‹ค.

์ฐธ๊ณ  ํ•ญ๋ชฉ

์ด ๊ธฐ๋Šฅ์€ ํ˜„์žฌ ๊ณต๊ฐœ ๋ฏธ๋ฆฌ ๋ณด๊ธฐ ๋ฒ„์ „์ด๋ฉฐ ๋ณ€๊ฒฝ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด ๋ฌธ์„œ์˜ ๋ฒ„์ „์€ GitHub ์›น ์‚ฌ์ดํŠธ์˜ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ์— ๋Œ€ํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ํ™˜๊ฒฝ์—์„œ ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ์„ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ์€ ์œ„์˜ ํƒญ์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

์ด ๋ฌธ์„œ์˜ ๋ฒ„์ „์€ VS Code์˜ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ ๋ฐ ํ”„๋กฌํ”„ํŠธ ํŒŒ์ผ์„ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ํ™˜๊ฒฝ์—์„œ ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ์„ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ ์ง€์นจ์€ ์œ„์˜ ํƒญ์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

์ด ๋ฌธ์„œ์˜ ๋ฒ„์ „์€ Visual Studio์˜ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ์„ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ํ™˜๊ฒฝ์—์„œ ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ์„ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ ์ง€์นจ์€ ์œ„์˜ ํƒญ์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ  ํ•ญ๋ชฉ

์ด ๊ธฐ๋Šฅ์€ ํ˜„์žฌ ๊ณต๊ฐœ ๋ฏธ๋ฆฌ ๋ณด๊ธฐ ๋ฒ„์ „์ด๋ฉฐ ๋ณ€๊ฒฝ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด ๋ฌธ์„œ์˜ ์ด ๋ฒ„์ „์€ JetBrains IDE์˜ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ ์‚ฌ์šฉ์— ๊ด€ํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ํ™˜๊ฒฝ์—์„œ ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ์„ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ ์ง€์นจ์€ ์œ„์˜ ํƒญ์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ  ํ•ญ๋ชฉ

์ด ๊ธฐ๋Šฅ์€ ํ˜„์žฌ ๊ณต๊ฐœ ๋ฏธ๋ฆฌ ๋ณด๊ธฐ ๋ฒ„์ „์ด๋ฉฐ ๋ณ€๊ฒฝ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด ๋ฌธ์„œ์˜ ์ด ๋ฒ„์ „์€ Xcode์˜ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ ์‚ฌ์šฉ์— ๊ด€ํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ํ™˜๊ฒฝ์—์„œ ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ์„ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ ์ง€์นจ์€ ์œ„์˜ ํƒญ์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

Copilot์˜ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ ์ •๋ณด

๋ฆฌํฌ์ง€ํ† ๋ฆฌ ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ์„ ์‚ฌ์šฉํ•˜๋ฉด Copilot์— ๋ฆฌํฌ์ง€ํ† ๋ฆฌ๋ณ„ ์ง€์นจ ๋ฐ ๊ธฐ๋ณธ ์„ค์ •์„ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ฆฌํฌ์ง€ํ† ๋ฆฌ ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ์€ ํ˜„์žฌ ๋‹ค์Œ์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

  • VS Code์—์„œ Copilot Chat
  • Copilot ์ฝ”๋”ฉ ์—์ด์ „ํŠธ
  • Visual Studio, JetBrains IDE, Xcode, ๋ฐ GitHub ์›น์‚ฌ์ดํŠธ(copilot-instructions.md ํŒŒ์ผ๋งŒ ํ•ด๋‹น)์—์„œ Copilot Chat
  • Copilot ์ฝ”๋“œ ๊ฒ€ํ† (copilot-instructions.md ํŒŒ์ผ๋งŒ ํ•ด๋‹น)

๋ฆฌํฌ์ง€ํ† ๋ฆฌ ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ์˜ ํ•„์ˆ˜ ์กฐ๊ฑด

  • ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ ํŒŒ์ผ์ด ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค(์•„๋ž˜ ์ง€์นจ ์ฐธ์กฐ).
  • ์ตœ์‹  ๋ฒ„์ „์˜ Copilot ํ™•์žฅ์„ JetBrains IDE์— ์„ค์น˜ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
  • ์ตœ์‹  ๋ฒ„์ „์˜ Copilot ํ™•์žฅ์„ Xcode์— ์„ค์น˜ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๋ฆฌํฌ์ง€ํ† ๋ฆฌ ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ ํŒŒ์ผ ๋งŒ๋“ค๊ธฐ

JetBrains IDE๋Š” ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์— ์ €์žฅ๋œ ๋‹จ์ผ .github/copilot-instructions.md ์‚ฌ์šฉ์ž ์ง€์ • ๋ช…๋ น ํŒŒ์ผ์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

Copilot ์„ค์ • ํŽ˜์ด์ง€๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์— ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ ํŒŒ์ผ์„ ๋งŒ๋“ค๊ฑฐ๋‚˜ ์ด ํŒŒ์ผ์„ ์ˆ˜๋™์œผ๋กœ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ง€์นจ ์‚ฌ์ด์˜ ๊ณต๋ฐฑ์€ ๋ฌด์‹œ๋˜๋ฏ€๋กœ ์ง€์นจ์„ ์ƒˆ ์ค„์— ๊ฐ๊ฐ ๋‹จ์ผ ๋‹จ๋ฝ์œผ๋กœ ์ž‘์„ฑํ•˜๊ฑฐ๋‚˜ ๊ฐ€๋…์„ฑ์„ ์œ„ํ•ด ๋นˆ ์ค„๋กœ ๊ตฌ๋ถ„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์„ค์ • ํŽ˜์ด์ง€ ์‚ฌ์šฉ

  1. JetBrains IDE์—์„œ ํŒŒ์ผ ๋ฉ”๋‰ด(Windows) ๋˜๋Š” ๋ฉ”๋‰ด ๋ชจ์Œ(macOS)์—์„œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์ด๋ฆ„์„ ํด๋ฆญํ•œ ๋‹ค์Œ ์„ค์ •์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.
  2. ์–ธ์–ด ๋ฐ ํ”„๋ ˆ์ž„์›Œํฌ์—์„œ GitHub Copilot ์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.
  3. "Copilot Instructions"์—์„œ Workspace ๋˜๋Š” Global์„ ํด๋ฆญํ•˜์—ฌ ์‚ฌ์šฉ์ž ์ง€์ • ๋ช…๋ น์ด ํ˜„์žฌ ์ž‘์—… ์˜์—ญ ๋˜๋Š” ๋ชจ๋“  ์ž‘์—… ์˜์—ญ์— ์ ์šฉ๋˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

์ˆ˜๋™์œผ๋กœ ์ž‘์—… ์˜์—ญ ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ ํŒŒ์ผ ๋งŒ๋“ค๊ธฐ

  1. ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์˜ ๋ฃจํŠธ์—์„œ ์ด๋ฆ„์ด .github/copilot-instructions.md์ธ ํŒŒ์ผ์„ ๋งŒ๋“ญ๋‹ˆ๋‹ค.

    .github ๋””๋ ‰ํ„ฐ๋ฆฌ๊ฐ€ ์•„์ง ์—†๋Š” ๊ฒฝ์šฐ, ์ƒˆ๋กœ ๋งŒ๋“ญ๋‹ˆ๋‹ค.

  2. ํŒŒ์ผ์— ์ž์—ฐ์–ด ์ง€์นจ์„ Markdown ํ˜•์‹์œผ๋กœ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

์ €์žฅ๋˜๋ฉด ์ด๋Ÿฌํ•œ ์ง€์นจ์€ Copilot์„ ์‚ฌ์šฉํ•˜๋„๋ก ์„ค์ •ํ•œ ์ƒํƒœ๋กœ ์—ฐ JetBrains IDE์˜ ํ˜„์žฌ ์ž‘์—… ์˜์—ญ์— ์ ์šฉ๋ฉ๋‹ˆ๋‹ค.

์ „์—ญ ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ ํŒŒ์ผ ์ˆ˜๋™์œผ๋กœ ๋งŒ๋“ค๊ธฐ

JetBrains IDE์˜ ๋ชจ๋“  ์ž‘์—… ์˜์—ญ์— ๋™์ผํ•œ ์ง€์นจ์„ ์ ์šฉํ•˜๋ ค๋ฉด ๋กœ์ปฌ ๋จธ์‹ ์— ์ „์—ญ ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ ํŒŒ์ผ์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  1. ํŒŒ์ผ ํƒ์ƒ‰๊ธฐ ๋˜๋Š” ํ„ฐ๋ฏธ๋„์„ ์—ฝ๋‹ˆ๋‹ค.

  2. ์šด์˜ ์ฒด์ œ์— ์ ํ•ฉํ•œ ์œ„์น˜๋กœ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค.

    • macOS: /Users/YOUR-USERNAME/.config/github-copilot/intellij/
    • Windows: C:\Users\YOUR-USERNAME\AppData\Local\github-copilot\intellij\
  3. ํ•ด๋‹น ๋””๋ ‰ํ„ฐ๋ฆฌ์—์„œ global-copilot-instructions.md๋ผ๋Š” ํŒŒ์ผ์„ ๋งŒ๋“ญ๋‹ˆ๋‹ค.

  4. Markdown ํ˜•์‹์„ ์‚ฌ์šฉํ•˜์—ฌ ์ž์—ฐ์–ด๋กœ ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ์„ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

์ €์žฅ๋˜๋ฉด ์ด๋Ÿฌํ•œ ์ง€์นจ์€ Copilot์„ ์‚ฌ์šฉํ•˜๋„๋ก ์„ค์ •ํ•œ ์ƒํƒœ๋กœ ์—ฐ JetBrains IDE์˜ ๋ชจ๋“  ์ž‘์—… ์˜์—ญ์— ์ „์—ญ์ ์œผ๋กœ ์ ์šฉ๋ฉ๋‹ˆ๋‹ค.

Xcode๋Š” ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์— ์ €์žฅ๋œ ๋‹จ์ผ .github/copilot-instructions.md ์‚ฌ์šฉ์ž ์ง€์ • ๋ช…๋ น ํŒŒ์ผ์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

Copilot ์„ค์ • ํŽ˜์ด์ง€๋ฅผ ํ†ตํ•ด ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์— ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ ํŒŒ์ผ์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ง€์นจ ์‚ฌ์ด์˜ ๊ณต๋ฐฑ์€ ๋ฌด์‹œ๋˜๋ฏ€๋กœ ์ง€์นจ์„ ์ƒˆ ์ค„์— ๊ฐ๊ฐ ๋‹จ์ผ ๋‹จ๋ฝ์œผ๋กœ ์ž‘์„ฑํ•˜๊ฑฐ๋‚˜ ๊ฐ€๋…์„ฑ์„ ์œ„ํ•ด ๋นˆ ์ค„๋กœ ๊ตฌ๋ถ„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  1. Xcode์šฉ GitHub Copilot ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์—ฝ๋‹ˆ๋‹ค.
  2. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ฐฝ์˜ ๋งจ ์œ„์— ์žˆ๋Š” ์„ค์ •์—์„œ ๊ณ ๊ธ‰์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.
  3. "์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ" ์˜ค๋ฅธ์ชฝ์—์„œ ํ˜„์žฌ ์ž‘์—… ์˜์—ญ ๋˜๋Š” ์ „์—ญ์„ ํด๋ฆญํ•˜์—ฌ ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ์„ ํ˜„์žฌ ์ž‘์—… ์˜์—ญ์— ์ ์šฉํ• ์ง€ ๋˜๋Š” ๋ชจ๋“  ์ž‘์—… ์˜์—ญ์— ์ ์šฉํ• ์ง€๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

VS Code๋Š” ๋‹ค์Œ ์ค‘ ํ•˜๋‚˜๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

  • ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์— ์ €์žฅ๋œ ๋‹จ์ผ .github/copilot-instructions.md ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ ํŒŒ์ผ
  • ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์˜ .github/instructions์— ์ €์žฅ๋œ ํ•˜๋‚˜ ์ด์ƒ์˜ .instructions.md ํŒŒ์ผ. ๊ฐ ํŒŒ์ผ์€ applyTo ํ”„๋ŸฐํŠธ ๋งคํ„ฐ๋ฅผ ์ง€์ •ํ•˜์—ฌ ์ง€์นจ์ด ์ ์šฉ๋˜๋Š” ํŒŒ์ผ ๋˜๋Š” ๋””๋ ‰ํ„ฐ๋ฆฌ๋ฅผ ์ •์˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋‹จ์ผ .github/copilot-instructions.md ํŒŒ์ผ ์‚ฌ์šฉ

  1. ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์˜ ๋ฃจํŠธ์—์„œ ์ด๋ฆ„์ด .github/copilot-instructions.md์ธ ํŒŒ์ผ์„ ๋งŒ๋“ญ๋‹ˆ๋‹ค.

    .github ๋””๋ ‰ํ„ฐ๋ฆฌ๊ฐ€ ์•„์ง ์—†๋Š” ๊ฒฝ์šฐ, ์ƒˆ๋กœ ๋งŒ๋“ญ๋‹ˆ๋‹ค.

  2. ํŒŒ์ผ์— ์ž์—ฐ์–ด ์ง€์นจ์„ Markdown ํ˜•์‹์œผ๋กœ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

    ์ง€์นจ ์‚ฌ์ด์˜ ๊ณต๋ฐฑ์€ ๋ฌด์‹œ๋˜๋ฏ€๋กœ ์ง€์นจ์„ ์ƒˆ ์ค„์— ๊ฐ๊ฐ ๋‹จ์ผ ๋‹จ๋ฝ์œผ๋กœ ์ž‘์„ฑํ•˜๊ฑฐ๋‚˜ ๊ฐ€๋…์„ฑ์„ ์œ„ํ•ด ๋นˆ ์ค„๋กœ ๊ตฌ๋ถ„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํ•˜๋‚˜ ์ด์ƒ์˜ .instructions.md ํŒŒ์ผ ์‚ฌ์šฉ

  1. .github/instructions ๋””๋ ‰ํ„ฐ๋ฆฌ๊ฐ€ ์•„์ง ์—†๋Š” ๊ฒฝ์šฐ, ์ƒˆ๋กœ ๋งŒ๋“ญ๋‹ˆ๋‹ค.

  2. ํŒŒ์ผ์— ์ž์—ฐ์–ด ์ง€์นจ์„ ์ถ”๊ฐ€ํ•˜์—ฌ ํ•˜๋‚˜ ์ด์ƒ์˜ .instructions.md ํŒŒ์ผ์„ ๋งŒ๋“ญ๋‹ˆ๋‹ค.

    ์ง€์นจ ์‚ฌ์ด์˜ ๊ณต๋ฐฑ์€ ๋ฌด์‹œ๋˜๋ฏ€๋กœ ์ง€์นจ์„ ์ƒˆ ์ค„์— ๊ฐ๊ฐ ๋‹จ์ผ ๋‹จ๋ฝ์œผ๋กœ ์ž‘์„ฑํ•˜๊ฑฐ๋‚˜ ๊ฐ€๋…์„ฑ์„ ์œ„ํ•ด ๋นˆ ์ค„๋กœ ๊ตฌ๋ถ„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  3. glob ๊ตฌ๋ฌธ์„ ์‚ฌ์šฉํ•˜์—ฌ Markdown ํŒŒ์ผ์— applyTo ํ”„๋ŸฐํŠธ ๋งคํ„ฐ๋ฅผ ์ถ”๊ฐ€ํ•˜์—ฌ ์ง€์นจ์ด ์ ์šฉ๋˜๋Š” ํŒŒ์ผ ๋˜๋Š” ๋””๋ ‰ํ„ฐ๋ฆฌ๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค.

    ---
    applyTo: "app/models/**/*.rb"
    ---
    
    Add custom instructions here
    

    ๋ชจ๋“  ํŒŒ์ผ์— ์ง€์นจ์„ ์ ์šฉํ•˜๋ ค๋ฉด ** ํŒจํ„ด์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

Visual Studio์—์„œ๋Š” ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์— ์ €์žฅ๋œ ๋‹จ์ผ .github/copilot-instructions.md ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ ํŒŒ์ผ์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

  1. ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์˜ ๋ฃจํŠธ์—์„œ ์ด๋ฆ„์ด .github/copilot-instructions.md์ธ ํŒŒ์ผ์„ ๋งŒ๋“ญ๋‹ˆ๋‹ค.

    .github ๋””๋ ‰ํ„ฐ๋ฆฌ๊ฐ€ ์•„์ง ์—†๋Š” ๊ฒฝ์šฐ, ์ƒˆ๋กœ ๋งŒ๋“ญ๋‹ˆ๋‹ค.

  2. ํŒŒ์ผ์— ์ž์—ฐ์–ด ์ง€์นจ์„ Markdown ํ˜•์‹์œผ๋กœ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

    ์ง€์นจ ์‚ฌ์ด์˜ ๊ณต๋ฐฑ์€ ๋ฌด์‹œ๋˜๋ฏ€๋กœ ์ง€์นจ์„ ์ƒˆ ์ค„์— ๊ฐ๊ฐ ๋‹จ์ผ ๋‹จ๋ฝ์œผ๋กœ ์ž‘์„ฑํ•˜๊ฑฐ๋‚˜ ๊ฐ€๋…์„ฑ์„ ์œ„ํ•ด ๋นˆ ์ค„๋กœ ๊ตฌ๋ถ„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

GitHub ์›น ์‚ฌ์ดํŠธ์˜ Copilot Chat ๋ฐ Copilot ์ฝ”๋“œ ๊ฒ€ํ†  ๋Š” ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์— ์ €์žฅ๋œ ๋‹จ์ผ .github/copilot-instructions.md ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ ํŒŒ์ผ์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

๋˜ํ•œ Copilot ์ฝ”๋”ฉ ์—์ด์ „ํŠธ ๋Š” ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์˜ .github/instructions ๋‚ด์— ์ €์žฅ๋œ ํ•˜๋‚˜ ์ด์ƒ์˜ .instructions.md ํŒŒ์ผ์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ๊ฐ ํŒŒ์ผ์€ applyTo ํ”„๋ŸฐํŠธ ๋งคํ„ฐ๋ฅผ ์ง€์ •ํ•˜์—ฌ ์ง€์นจ์ด ์ ์šฉ๋˜๋Š” ํŒŒ์ผ ๋˜๋Š” ๋””๋ ‰ํ„ฐ๋ฆฌ๋ฅผ ์ •์˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋‹จ์ผ .github/copilot-instructions.md ํŒŒ์ผ ์‚ฌ์šฉ

  1. ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์˜ ๋ฃจํŠธ์—์„œ ์ด๋ฆ„์ด .github/copilot-instructions.md์ธ ํŒŒ์ผ์„ ๋งŒ๋“ญ๋‹ˆ๋‹ค.

    .github ๋””๋ ‰ํ„ฐ๋ฆฌ๊ฐ€ ์•„์ง ์—†๋Š” ๊ฒฝ์šฐ, ์ƒˆ๋กœ ๋งŒ๋“ญ๋‹ˆ๋‹ค.

  2. ํŒŒ์ผ์— ์ž์—ฐ์–ด ์ง€์นจ์„ Markdown ํ˜•์‹์œผ๋กœ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

    ์ง€์นจ ์‚ฌ์ด์˜ ๊ณต๋ฐฑ์€ ๋ฌด์‹œ๋˜๋ฏ€๋กœ ์ง€์นจ์„ ์ƒˆ ์ค„์— ๊ฐ๊ฐ ๋‹จ์ผ ๋‹จ๋ฝ์œผ๋กœ ์ž‘์„ฑํ•˜๊ฑฐ๋‚˜ ๊ฐ€๋…์„ฑ์„ ์œ„ํ•ด ๋นˆ ์ค„๋กœ ๊ตฌ๋ถ„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํ•˜๋‚˜ ์ด์ƒ์˜ .instructions.md ํŒŒ์ผ ์‚ฌ์šฉ

  1. .github/instructions ๋””๋ ‰ํ„ฐ๋ฆฌ๊ฐ€ ์•„์ง ์—†๋Š” ๊ฒฝ์šฐ, ์ƒˆ๋กœ ๋งŒ๋“ญ๋‹ˆ๋‹ค.

  2. ํŒŒ์ผ์— ์ž์—ฐ์–ด ์ง€์นจ์„ ์ถ”๊ฐ€ํ•˜์—ฌ ํ•˜๋‚˜ ์ด์ƒ์˜ .instructions.md ํŒŒ์ผ์„ ๋งŒ๋“ญ๋‹ˆ๋‹ค.

    ์ง€์นจ ์‚ฌ์ด์˜ ๊ณต๋ฐฑ์€ ๋ฌด์‹œ๋˜๋ฏ€๋กœ ์ง€์นจ์„ ์ƒˆ ์ค„์— ๊ฐ๊ฐ ๋‹จ์ผ ๋‹จ๋ฝ์œผ๋กœ ์ž‘์„ฑํ•˜๊ฑฐ๋‚˜ ๊ฐ€๋…์„ฑ์„ ์œ„ํ•ด ๋นˆ ์ค„๋กœ ๊ตฌ๋ถ„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  3. glob ๊ตฌ๋ฌธ์„ ์‚ฌ์šฉํ•˜์—ฌ Markdown ํŒŒ์ผ์— applyTo ํ”„๋ŸฐํŠธ ๋งคํ„ฐ๋ฅผ ์ถ”๊ฐ€ํ•˜์—ฌ ์ง€์นจ์ด ์ ์šฉ๋˜๋Š” ํŒŒ์ผ ๋˜๋Š” ๋””๋ ‰ํ„ฐ๋ฆฌ๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค.

    ---
    applyTo: "app/models/**/*.rb"
    ---
    
    Add custom instructions here
    

    ๋ชจ๋“  ํŒŒ์ผ์— ์ง€์นจ์„ ์ ์šฉํ•˜๋ ค๋ฉด ** ํŒจํ„ด์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

๋ฆฌํฌ์ง€ํ† ๋ฆฌ์— ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ ํŒŒ์ผ์„ ์„ฑ๊ณต์ ์œผ๋กœ ์ถ”๊ฐ€ํ–ˆ๋‚˜์š”?

์˜ˆ ์•„๋‹ˆ์š”

ํšจ๊ณผ์ ์ธ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ ์ž‘์„ฑ

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

์ง€์นจ ํŒŒ์ผ์— ์‚ฌ์šฉํ•˜๋Š” ์ •ํ™•ํ•œ ๊ตฌ์กฐ๋Š” ํ”„๋กœ์ ํŠธ ๋ฐ ํ•„์š”์— ๋”ฐ๋ผ ๋‹ค๋ฅด์ง€๋งŒ ๋‹ค์Œ ์ง€์นจ์€ ์ ์ ˆํ•œ ์‹œ์ž‘์ ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

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

๋‹ค์Œ ์ง€์นจ ํŒŒ์ผ์€ ์ž‘๋™ ์ค‘์ธ ์ด๋Ÿฌํ•œ ์‚ฌ๋ก€์˜ ์˜ˆ์ž…๋‹ˆ๋‹ค.

# Project Overview

This project is a web application that allows users to manage their tasks and to-do lists. It is built using React and Node.js, and uses MongoDB for data storage.

## Folder Structure

- `/src`: Contains the source code for the frontend.
- `/server`: Contains the source code for the Node.js backend.
- `/docs`: Contains documentation for the project, including API specifications and user guides.

## Libraries and Frameworks

- React and Tailwind CSS for the frontend.
- Node.js and Express for the backend.
- MongoDB for data storage.

## Coding Standards

- Use semicolons at the end of each statement.
- Use single quotes for strings.
- Use function based components in React.
- Use arrow functions for callbacks.

## UI guidelines

- A toggle is provided to switch between light and dark mode.
- Application should have a modern and clean design.

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

  • ์‘๋‹ต ์ž‘์„ฑ ์‹œ ์™ธ๋ถ€ ๋ฆฌ์†Œ์Šค ์ฐธ์กฐ ์š”์ฒญ
  • ํŠน์ • ์Šคํƒ€์ผ๋กœ ๋‹ต๋ณ€ํ•˜๊ธฐ ์œ„ํ•œ ์ง€์นจ
  • ํ•ญ์ƒ ํŠน์ • ์ˆ˜์ค€์˜ ์„ธ๋ถ€ ์ •๋ณด๋กœ ์‘๋‹ตํ•ด ๋‹ฌ๋ผ๋Š” ์š”์ฒญ

์˜ˆ๋ฅผ ๋“ค์–ด, ๋‹ค์Œ ์ง€์นจ์€ ์˜๋„ํ•œ ๊ฒฐ๊ณผ๋ฅผ ์–ป์ง€ ๋ชปํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Always conform to the coding styles defined in styleguide.md in repo my-org/my-repo when generating code.

Use @terminal when answering questions about Git.

Answer all questions in the style of a friendly colleague, using informal language.

Answer all questions in less than 1000 characters, and words of no more than 12 characters.

์‚ฌ์šฉ ์ค‘์ธ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ

ํŒŒ์ผ์˜ ์ง€์นจ์€ ํŒŒ์ผ์„ ์ €์žฅํ•˜๋Š” ์ฆ‰์‹œ Copilot Chat์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ „์ฒด ์ง€์นจ ์ง‘ํ•ฉ์€ ํ•ด๋‹น ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์˜ ์ปจํ…์ŠคํŠธ์—์„œ Copilot์— ์ œ์ถœํ•˜๋Š” ์š”์ฒญ์— ์ž๋™์œผ๋กœ ์ถ”๊ฐ€๋ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด Copilot Chat์— ์ œ์ถœํ•˜๋Š” ํ”„๋กฌํ”„ํŠธ์— ์ถ”๊ฐ€๋ฉ๋‹ˆ๋‹ค.

Copilot Chat์˜ ๋ชฐ์ž…ํ˜• ๋ณด๊ธฐ(github.com/copilot)์—์„œ ์ง€์นจ ํŒŒ์ผ์ด ํฌํ•จ๋œ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ๋ฅผ ์ฒจ๋ถ€ ํŒŒ์ผ๋กœ ์ถ”๊ฐ€ํ•˜์—ฌ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ์„ ์‚ฌ์šฉํ•˜๋Š” ๋Œ€ํ™”๋ฅผ ์‹œ์ž‘ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ฆฌํฌ์ง€ํ† ๋ฆฌ ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ์ด Copilot Chat์—์„œ ์‚ฌ์šฉ๋  ๋•Œ๋งˆ๋‹ค ์ง€์นจ ํŒŒ์ผ์€ ์ƒ์„ฑ๋œ ์‘๋‹ต์— ๋Œ€ํ•œ ์ฐธ์กฐ๋กœ ์ถ”๊ฐ€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌํฌ์ง€ํ† ๋ฆฌ ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ์ด ์‚ฌ์šฉ๋˜์—ˆ๋Š”์ง€ ํ™•์ธํ•˜๋ ค๋ฉด ์ฑ„ํŒ… ํŒจ๋„์—์„œ ์ฑ„ํŒ… ์‘๋‹ต ๋งจ ์œ„์— ์žˆ๋Š” ์ฐธ์กฐ ๋ชฉ๋ก์„ ํ™•์žฅํ•˜๊ณ  .github/copilot-instructions.md ํŒŒ์ผ์ด ๋‚˜์—ด๋˜์–ด ์žˆ๋Š”์ง€ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

์–ด๋‘์šด ์ฃผํ™ฉ์ƒ‰ ์œค๊ณฝ์„ ์œผ๋กœ ๊ฐ•์กฐ ํ‘œ์‹œ๋œ 'copilot-instructions.md' ํŒŒ์ผ์„ ๋ณด์—ฌ ์ฃผ๋Š” ํ™•์žฅ๋œ ์ฐธ์กฐ ๋ชฉ๋ก์˜ ์Šคํฌ๋ฆฐ์ƒท

์ฐธ์กฐ๋ฅผ ํด๋ฆญํ•˜์—ฌ ํŒŒ์ผ์„ ์—ด ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ฐธ๊ณ  ํ•ญ๋ชฉ

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

์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ์€ ์ฑ„ํŒ… ๋ณด๊ธฐ ๋˜๋Š” ์ธ๋ผ์ธ ์ฑ„ํŒ…์— ํ‘œ์‹œ๋˜์ง€ ์•Š์ง€๋งŒ ์ฑ„ํŒ… ๋ณด๊ธฐ์—์„œ ์‘๋‹ต์˜ ์ฐธ์กฐ ๋ชฉ๋ก์„ ํ™•์ธํ•˜์—ฌ Copilot์—์„œ ์ด ์ง€์นจ์ด ์‚ฌ์šฉ๋˜๊ณ  ์žˆ๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ์ด ๋ชจ๋ธ์— ์ „์†ก๋œ ํ”„๋กฌํ”„ํŠธ์— ์ถ”๊ฐ€๋œ ๊ฒฝ์šฐ .github/copilot-instructions.md ํŒŒ์ผ์ด ์ฐธ์กฐ๋กœ ๋‚˜์—ด๋ฉ๋‹ˆ๋‹ค. ์ฐธ์กฐ๋ฅผ ํด๋ฆญํ•˜์—ฌ ํŒŒ์ผ์„ ์—ด ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์–ด๋‘์šด ์ฃผํ™ฉ์ƒ‰ ์œค๊ณฝ์„ ์œผ๋กœ ๊ฐ•์กฐ ํ‘œ์‹œ๋œ 'copilot-instructions.md' ํŒŒ์ผ์„ ๋ณด์—ฌ ์ฃผ๋Š” ํ™•์žฅ๋œ ์ฐธ์กฐ ๋ชฉ๋ก์˜ ์Šคํฌ๋ฆฐ์ƒท

์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ์€ ์ฑ„ํŒ… ๋ณด๊ธฐ ๋˜๋Š” ์ธ๋ผ์ธ ์ฑ„ํŒ…์— ํ‘œ์‹œ๋˜์ง€ ์•Š์ง€๋งŒ ์ฑ„ํŒ… ๋ณด๊ธฐ์—์„œ ์‘๋‹ต์˜ ์ฐธ์กฐ ๋ชฉ๋ก์„ ํ™•์ธํ•˜์—ฌ Copilot์—์„œ ์ด ์ง€์นจ์ด ์‚ฌ์šฉ๋˜๊ณ  ์žˆ๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ์ด ๋ชจ๋ธ์— ์ „์†ก๋œ ํ”„๋กฌํ”„ํŠธ์— ์ถ”๊ฐ€๋œ ๊ฒฝ์šฐ .github/copilot-instructions.md ํŒŒ์ผ์ด ์ฐธ์กฐ๋กœ ๋‚˜์—ด๋ฉ๋‹ˆ๋‹ค. ์ฐธ์กฐ๋ฅผ ํด๋ฆญํ•˜์—ฌ ํŒŒ์ผ์„ ์—ด ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์–ด๋‘์šด ์ฃผํ™ฉ์ƒ‰ ์œค๊ณฝ์„ ์œผ๋กœ ๊ฐ•์กฐ ํ‘œ์‹œ๋œ 'copilot-instructions.md' ํŒŒ์ผ์„ ๋ณด์—ฌ ์ฃผ๋Š” ์ฐธ์กฐ ํŒ์—…์˜ ์Šคํฌ๋ฆฐ์ƒท

์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ์€ ์ฑ„ํŒ… ๋ณด๊ธฐ ๋˜๋Š” ์ธ๋ผ์ธ ์ฑ„ํŒ…์— ํ‘œ์‹œ๋˜์ง€ ์•Š์ง€๋งŒ ์ฑ„ํŒ… ๋ณด๊ธฐ์—์„œ ์‘๋‹ต์˜ ์ฐธ์กฐ ๋ชฉ๋ก์„ ํ™•์ธํ•˜์—ฌ Copilot์—์„œ ์ด ์ง€์นจ์ด ์‚ฌ์šฉ๋˜๊ณ  ์žˆ๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ์ด ๋ชจ๋ธ์— ์ „์†ก๋œ ํ”„๋กฌํ”„ํŠธ์— ์ถ”๊ฐ€๋œ ๊ฒฝ์šฐ .github/copilot-instructions.md ํŒŒ์ผ์ด ์ฐธ์กฐ๋กœ ๋‚˜์—ด๋ฉ๋‹ˆ๋‹ค. ์ฐธ์กฐ๋ฅผ ํด๋ฆญํ•˜์—ฌ ํŒŒ์ผ์„ ์—ด ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ์€ ์ฑ„ํŒ… ๋ณด๊ธฐ ๋˜๋Š” ์ธ๋ผ์ธ ์ฑ„ํŒ…์— ํ‘œ์‹œ๋˜์ง€ ์•Š์ง€๋งŒ ์ฑ„ํŒ… ๋ณด๊ธฐ์—์„œ ์‘๋‹ต์˜ ์ฐธ์กฐ ๋ชฉ๋ก์„ ํ™•์ธํ•˜์—ฌ Copilot์—์„œ ์ด ์ง€์นจ์ด ์‚ฌ์šฉ๋˜๊ณ  ์žˆ๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ์ด ๋ชจ๋ธ์— ์ „์†ก๋œ ํ”„๋กฌํ”„ํŠธ์— ์ถ”๊ฐ€๋œ ๊ฒฝ์šฐ .github/copilot-instructions.md ํŒŒ์ผ์ด ์ฐธ์กฐ๋กœ ๋‚˜์—ด๋ฉ๋‹ˆ๋‹ค. ์ฐธ์กฐ๋ฅผ ํด๋ฆญํ•˜์—ฌ ํŒŒ์ผ์„ ์—ด ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ฆฌํฌ์ง€ํ† ๋ฆฌ ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ ์‚ฌ์šฉ ๋˜๋Š” ์‚ฌ์šฉ ์•ˆ ํ•จ

Copilot์—์„œ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ ๊ธฐ๋ฐ˜ ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ์„ ์‚ฌ์šฉํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ์„ ํƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Copilot Chat์— ๋Œ€ํ•œ ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ ์‚ฌ์šฉ ๋˜๋Š” ์‚ฌ์šฉ ์•ˆ ํ•จ

์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ์€ ๊ธฐ๋ณธ์ ์œผ๋กœ Copilot Chat๋ฅผ ์‚ฌ์šฉํ•˜๋„๋ก ์„ค์ •๋˜์–ด ์žˆ์ง€๋งŒ ์–ธ์ œ๋“ ์ง€ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋„๋ก ์„ค์ •ํ•˜๊ฑฐ๋‚˜ ๋‹ค์‹œ ์‚ฌ์šฉํ•˜๋„๋ก ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Š” Copilot Chat๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์‚ฌ์šฉ์ž ๋ณธ์ธ์—๊ฒŒ๋งŒ ์ ์šฉ๋˜๋ฉฐ ๋‹ค๋ฅธ ์‚ฌ์šฉ์ž์—๊ฒŒ๋Š” ์˜ํ–ฅ์„ ์ฃผ์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

  1. GitHub.com์—์„œ ๋‹ค์Œ ์ค‘ ํ•˜๋‚˜๋ฅผ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค.

    • ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ ํŒŒ์ผ์ด ์žˆ๋Š” ๋ฆฌํฌ์ง€ํ† ๋ฆฌ๋กœ ์ด๋™ํ•œ ํ›„ ๋ณด์กฐ ์ฑ„ํŒ… ํŒจ๋„์„ ์—ฝ๋‹ˆ๋‹ค.
    • Copilot Chat(github.com/copilot)์˜ ๋ชฐ์ž…ํ˜• ๋ณด๊ธฐ๋กœ ์ด๋™ํ•œ ํ›„ ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ ํŒŒ์ผ์ด ํฌํ•จ๋œ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ๋ฅผ ์—ฐ๊ฒฐํ•ฉ๋‹ˆ๋‹ค.
  2. ์ฑ„ํŒ… ํŒจ๋„์˜ ์œ„์ชฝ ๋˜๋Š” ๋ชฐ์ž…ํ˜• ํŽ˜์ด์ง€์˜ ์˜ค๋ฅธ์ชฝ ์œ„์— ์žˆ๋Š” ๋‹จ์ถ”๋ฅผ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

  3. Disable custom instructions ๋˜๋Š” Enable custom instructions๋ฅผ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

    ์ฐธ๊ณ  ํ•ญ๋ชฉ

    ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ ํŒŒ์ผ์ด ํฌํ•จ๋œ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์˜ ์ปจํ…์ŠคํŠธ์—์„œ๋งŒ ์ด๋Ÿฌํ•œ ์˜ต์…˜์ด ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.

์„ ํƒํ•œ ์˜ต์…˜์€ ์‚ฌ์šฉ์ž๊ฐ€ ๋ณ€๊ฒฝํ•  ๋•Œ๊นŒ์ง€ ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ ํŒŒ์ผ์ด ํฌํ•จ๋œ ๋ชจ๋“  ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์— ๊ณ„์† ์ ์šฉ๋ฉ๋‹ˆ๋‹ค.

Copilot ์ฝ”๋“œ ๊ฒ€ํ† ์˜ ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ ์‚ฌ์šฉ ๋˜๋Š” ์‚ฌ์šฉ ์•ˆ ํ•จ

์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ์€ ๊ธฐ๋ณธ์ ์œผ๋กœ Copilot ์ฝ”๋“œ ๊ฒ€ํ† ๋ฅผ ์‚ฌ์šฉํ•˜๋„๋ก ์„ค์ •๋˜์–ด ์žˆ์ง€๋งŒ GitHub.com์˜ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ ์„ค์ •์—์„œ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋„๋ก ์„ค์ •ํ•˜๊ฑฐ๋‚˜ ๋‹ค์‹œ ์‚ฌ์šฉํ•˜๋„๋ก ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Š” ์ด ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์—์„œ ์ˆ˜ํ–‰ํ•˜๋Š” ๋ชจ๋“  ์ฝ”๋“œ ๊ฒ€ํ† ์— ๋Œ€ํ•ด Copilot์˜ ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ ์‚ฌ์šฉ์— ์ ์šฉ๋ฉ๋‹ˆ๋‹ค.

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

  2. ๋ฆฌํฌ์ง€ํ† ๋ฆฌ ์ด๋ฆ„ ์•„๋ž˜์—์„œ ์„ค์ •์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค. "์„ค์ •" ํƒญ์ด ํ‘œ์‹œ๋˜์ง€ ์•Š์œผ๋ฉด ๋“œ๋กญ๋‹ค์šด ๋ฉ”๋‰ด๋ฅผ ์„ ํƒํ•œ ๋‹ค์Œ ์„ค์ •์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

    ํƒญ์„ ๋ณด์—ฌ ์ฃผ๋Š” ๋ฆฌํฌ์ง€ํ† ๋ฆฌ ํ—ค๋”์˜ ์Šคํฌ๋ฆฐ์ƒท. "์„ค์ •" ํƒญ์ด ์ง„ํ•œ ์ฃผํ™ฉ์ƒ‰ ์œค๊ณฝ์„ ์œผ๋กœ ๊ฐ•์กฐ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.

  3. ์‚ฌ์ด๋“œ๋ฐ”์˜ "Code & automation" ์„น์…˜์—์„œ Copilot ์„ ํด๋ฆญํ•œ ๋‹ค์Œ, Code review๋ฅผ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

  4. โ€œ๋Œ์–ด์˜ค๊ธฐ ์š”์ฒญ์„ ๊ฒ€ํ† ํ•  ๋•Œ ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ ์‚ฌ์šฉโ€ ์˜ต์…˜์„ ์ผœ๊ฑฐ๋‚˜ ๋•๋‹ˆ๋‹ค.

๋ฆฌํฌ์ง€ํ† ๋ฆฌ ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ ์‚ฌ์šฉ ๋˜๋Š” ์‚ฌ์šฉ ์•ˆ ํ•จ

Copilot์—์„œ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ ๊ธฐ๋ฐ˜ ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ์„ ์‚ฌ์šฉํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ์„ ํƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Copilot Chat์— ๋Œ€ํ•œ ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ ์‚ฌ์šฉ ๋˜๋Š” ์‚ฌ์šฉ ์•ˆ ํ•จ

์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ์€ ๊ธฐ๋ณธ์ ์œผ๋กœ Copilot Chat๋ฅผ ์‚ฌ์šฉํ•˜๋„๋ก ์„ค์ •๋˜์–ด ์žˆ์ง€๋งŒ ์–ธ์ œ๋“ ์ง€ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋„๋ก ์„ค์ •ํ•˜๊ฑฐ๋‚˜ ๋‹ค์‹œ ์‚ฌ์šฉํ•˜๋„๋ก ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Š” Copilot Chat๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์‚ฌ์šฉ์ž ๋ณธ์ธ์—๊ฒŒ๋งŒ ์ ์šฉ๋˜๋ฉฐ ๋‹ค๋ฅธ ์‚ฌ์šฉ์ž์—๊ฒŒ๋Š” ์˜ํ–ฅ์„ ์ฃผ์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

  1. ๋ฐ”๋กœ ๊ฐ€๊ธฐ ํ‚ค Command+,(Mac) / Ctrl+,(Linux/Windows)์„ ์‚ฌ์šฉํ•˜์—ฌ ์„ค์ • ํŽธ์ง‘๊ธฐ๋ฅผ ์—ฝ๋‹ˆ๋‹ค.
  2. ๊ฒ€์ƒ‰ ์ƒ์ž์— instruction file๋ฅผ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค.
  3. Code Generation: Use Instruction Files ์•„๋ž˜ ํ™•์ธ๋ž€์„ ์„ ํƒํ•˜๊ฑฐ๋‚˜ ์„ ํƒ ์ทจ์†Œํ•ฉ๋‹ˆ๋‹ค.

Copilot ์ฝ”๋“œ ๊ฒ€ํ† ์˜ ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ ์‚ฌ์šฉ ๋˜๋Š” ์‚ฌ์šฉ ์•ˆ ํ•จ

์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ์€ ๊ธฐ๋ณธ์ ์œผ๋กœ Copilot ์ฝ”๋“œ ๊ฒ€ํ† ๋ฅผ ์‚ฌ์šฉํ•˜๋„๋ก ์„ค์ •๋˜์–ด ์žˆ์ง€๋งŒ GitHub.com์˜ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ ์„ค์ •์—์„œ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋„๋ก ์„ค์ •ํ•˜๊ฑฐ๋‚˜ ๋‹ค์‹œ ์‚ฌ์šฉํ•˜๋„๋ก ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Š” ์ด ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์—์„œ ์ˆ˜ํ–‰ํ•˜๋Š” ๋ชจ๋“  ์ฝ”๋“œ ๊ฒ€ํ† ์— ๋Œ€ํ•ด Copilot์˜ ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ ์‚ฌ์šฉ์— ์ ์šฉ๋ฉ๋‹ˆ๋‹ค.

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

  2. ๋ฆฌํฌ์ง€ํ† ๋ฆฌ ์ด๋ฆ„ ์•„๋ž˜์—์„œ ์„ค์ •์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค. "์„ค์ •" ํƒญ์ด ํ‘œ์‹œ๋˜์ง€ ์•Š์œผ๋ฉด ๋“œ๋กญ๋‹ค์šด ๋ฉ”๋‰ด๋ฅผ ์„ ํƒํ•œ ๋‹ค์Œ ์„ค์ •์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

    ํƒญ์„ ๋ณด์—ฌ ์ฃผ๋Š” ๋ฆฌํฌ์ง€ํ† ๋ฆฌ ํ—ค๋”์˜ ์Šคํฌ๋ฆฐ์ƒท. "์„ค์ •" ํƒญ์ด ์ง„ํ•œ ์ฃผํ™ฉ์ƒ‰ ์œค๊ณฝ์„ ์œผ๋กœ ๊ฐ•์กฐ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.

  3. ์‚ฌ์ด๋“œ๋ฐ”์˜ "Code & automation" ์„น์…˜์—์„œ Copilot ์„ ํด๋ฆญํ•œ ๋‹ค์Œ, Code review๋ฅผ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

  4. โ€œ๋Œ์–ด์˜ค๊ธฐ ์š”์ฒญ์„ ๊ฒ€ํ† ํ•  ๋•Œ ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ ์‚ฌ์šฉโ€ ์˜ต์…˜์„ ์ผœ๊ฑฐ๋‚˜ ๋•๋‹ˆ๋‹ค.

๋ฆฌํฌ์ง€ํ† ๋ฆฌ ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ ์‚ฌ์šฉ ๋˜๋Š” ์‚ฌ์šฉ ์•ˆ ํ•จ

Copilot์—์„œ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ ๊ธฐ๋ฐ˜ ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ์„ ์‚ฌ์šฉํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ์„ ํƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Copilot Chat์— ๋Œ€ํ•œ ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ ์‚ฌ์šฉ ๋˜๋Š” ์‚ฌ์šฉ ์•ˆ ํ•จ

์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ์€ ๊ธฐ๋ณธ์ ์œผ๋กœ Copilot Chat๋ฅผ ์‚ฌ์šฉํ•˜๋„๋ก ์„ค์ •๋˜์–ด ์žˆ์ง€๋งŒ ์–ธ์ œ๋“ ์ง€ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋„๋ก ์„ค์ •ํ•˜๊ฑฐ๋‚˜ ๋‹ค์‹œ ์‚ฌ์šฉํ•˜๋„๋ก ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Š” Copilot Chat๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์‚ฌ์šฉ์ž ๋ณธ์ธ์—๊ฒŒ๋งŒ ์ ์šฉ๋˜๋ฉฐ ๋‹ค๋ฅธ ์‚ฌ์šฉ์ž์—๊ฒŒ๋Š” ์˜ํ–ฅ์„ ์ฃผ์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

  1. Visual Studio ๋„๊ตฌ ๋ชจ์Œ์˜ [๋„๊ตฌ] ์•„๋ž˜์—์„œ ์˜ต์…˜์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

    ๋ฐ์ดํ„ฐ ๋ณ€์ˆ˜ Visual Studio ๋ฉ”๋‰ด ํ‘œ์‹œ์ค„์˜ ์Šคํฌ๋ฆฐ์ƒท์ž…๋‹ˆ๋‹ค. "๋„๊ตฌ" ๋ฉ”๋‰ด๊ฐ€ ํ™•์žฅ๋˜๊ณ  "์˜ต์…˜" ํ•ญ๋ชฉ์ด ์ฃผํ™ฉ์ƒ‰ ์œค๊ณฝ์„ ์œผ๋กœ ๊ฐ•์กฐ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.

  2. "Options" ๋Œ€ํ™” ์ƒ์ž์—์„œ ๊ฒ€์ƒ‰ ์ฐฝ์— custom instructions๋ฅผ ์ž…๋ ฅํ•œ ๋‹ค์Œ, Copilot ์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

  3. (๋ฏธ๋ฆฌ ๋ณด๊ธฐ) ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ์„ .github/copilot-instructions.md ํŒŒ์ผ์—์„œ ๋กœ๋“œํ•˜๊ณ  ์š”์ฒญ์— ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ๋„๋ก ์„ค์ • ํ™•์ธ๋ž€์„ ์„ ํƒํ•˜๊ฑฐ๋‚˜ ์„ ํƒ ์ทจ์†Œํ•ฉ๋‹ˆ๋‹ค.

Copilot ์ฝ”๋“œ ๊ฒ€ํ† ์˜ ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ ์‚ฌ์šฉ ๋˜๋Š” ์‚ฌ์šฉ ์•ˆ ํ•จ

์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ์€ ๊ธฐ๋ณธ์ ์œผ๋กœ Copilot ์ฝ”๋“œ ๊ฒ€ํ† ๋ฅผ ์‚ฌ์šฉํ•˜๋„๋ก ์„ค์ •๋˜์–ด ์žˆ์ง€๋งŒ GitHub.com์˜ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ ์„ค์ •์—์„œ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋„๋ก ์„ค์ •ํ•˜๊ฑฐ๋‚˜ ๋‹ค์‹œ ์‚ฌ์šฉํ•˜๋„๋ก ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Š” ์ด ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์—์„œ ์ˆ˜ํ–‰ํ•˜๋Š” ๋ชจ๋“  ์ฝ”๋“œ ๊ฒ€ํ† ์— ๋Œ€ํ•ด Copilot์˜ ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ ์‚ฌ์šฉ์— ์ ์šฉ๋ฉ๋‹ˆ๋‹ค.

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

  2. ๋ฆฌํฌ์ง€ํ† ๋ฆฌ ์ด๋ฆ„ ์•„๋ž˜์—์„œ ์„ค์ •์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค. "์„ค์ •" ํƒญ์ด ํ‘œ์‹œ๋˜์ง€ ์•Š์œผ๋ฉด ๋“œ๋กญ๋‹ค์šด ๋ฉ”๋‰ด๋ฅผ ์„ ํƒํ•œ ๋‹ค์Œ ์„ค์ •์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

    ํƒญ์„ ๋ณด์—ฌ ์ฃผ๋Š” ๋ฆฌํฌ์ง€ํ† ๋ฆฌ ํ—ค๋”์˜ ์Šคํฌ๋ฆฐ์ƒท. "์„ค์ •" ํƒญ์ด ์ง„ํ•œ ์ฃผํ™ฉ์ƒ‰ ์œค๊ณฝ์„ ์œผ๋กœ ๊ฐ•์กฐ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.

  3. ์‚ฌ์ด๋“œ๋ฐ”์˜ "Code & automation" ์„น์…˜์—์„œ Copilot ์„ ํด๋ฆญํ•œ ๋‹ค์Œ, Code review๋ฅผ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

  4. โ€œ๋Œ์–ด์˜ค๊ธฐ ์š”์ฒญ์„ ๊ฒ€ํ† ํ•  ๋•Œ ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ ์‚ฌ์šฉโ€ ์˜ต์…˜์„ ์ผœ๊ฑฐ๋‚˜ ๋•๋‹ˆ๋‹ค.

ํ”„๋กฌํ”„ํŠธ ํŒŒ์ผ ํ™œ์„ฑํ™” ๋ฐ ์‚ฌ์šฉ

์ฐธ๊ณ  ํ•ญ๋ชฉ

ํ”„๋กฌํ”„ํŠธ ํŒŒ์ผ์€ ๊ณต๊ฐœ ๋ฏธ๋ฆฌ ๋ณด๊ธฐ์ด๋ฉฐ ๋ณ€๊ฒฝ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํ”„๋กฌํ”„ํŠธ ํŒŒ์ผ์„ ์‚ฌ์šฉํ•˜๋ฉด ์ถ”๊ฐ€ ์ปจํ…์ŠคํŠธ์™€ ํ•จ๊ป˜ ์žฌ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ํ”„๋กฌํ”„ํŠธ ์ง€์นจ์„ ์ž‘์„ฑํ•˜๊ณ  ๊ณต์œ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ž‘์—… ์˜์—ญ์— ์ €์žฅ๋˜์–ด ์žˆ๋Š” ํ”„๋กฌํ”„ํŠธ ํŒŒ์ผ์€ Copilot Chat์˜ ๊ธฐ์กด ์“ฐ๊ธฐ ํ”„๋กฌํ”„ํŠธ ํ˜•์‹๊ณผ ์œ ์‚ฌํ•œ Markdown ํŒŒ์ผ์ž…๋‹ˆ๋‹ค(์˜ˆ Rewrite #file:x.ts). ์ž‘์—… ์˜์—ญ์— ์—ฌ๋Ÿฌ ํ”„๋กฌํ”„ํŠธ ํŒŒ์ผ์„ ํฌํ•จํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐ ํ”„๋กฌํ”„ํŠธ๋Š” ์„œ๋กœ ๋‹ค๋ฅธ ์šฉ๋„๋กœ ํ”„๋กฌํ”„ํŠธ๋ฅผ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค.

ํ”„๋กฌํ”„ํŠธ ํŒŒ์ผ ์‚ฌ์šฉ

ํ”„๋กฌํ”„ํŠธ ํŒŒ์ผ์„ ์‚ฌ์šฉํ•˜๋„๋ก ์„ค์ •ํ•˜๋ ค๋ฉด ์ž‘์—… ์˜์—ญ ์„ค์ •์„ ๊ตฌ์„ฑํ•ฉ๋‹ˆ๋‹ค.

  1. Ctrl+Shift+P(Windows/Linux) / Command+Shift+P(Mac)๋ฅผ ๋ˆŒ๋Ÿฌ ๋ช…๋ น ํŒ”๋ ˆํŠธ๋ฅผ ์—ฝ๋‹ˆ๋‹ค.
  2. "Open Workspace Settings (JSON)"์„ ์ž…๋ ฅํ•˜๊ณ  ํ‘œ์‹œ๋˜๋Š” ์˜ต์…˜์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.
  3. settings.json ํŒŒ์ผ์—์„œ "chat.promptFiles": true๋ฅผ ์ถ”๊ฐ€ํ•˜์—ฌ .github/prompts ํด๋”๋ฅผ ํ”„๋กฌํ”„ํŠธ ํŒŒ์ผ์˜ ์œ„์น˜๋กœ ํ™œ์„ฑํ™”ํ•ฉ๋‹ˆ๋‹ค. ์ด ํด๋”๊ฐ€ ์•„์ง ์—†๋Š” ๊ฒฝ์šฐ์—๋Š” ์ƒˆ๋กœ ๋งŒ๋“ค์–ด์ง‘๋‹ˆ๋‹ค.

ํ”„๋กฌํ”„ํŠธ ํŒŒ์ผ ๋งŒ๋“ค๊ธฐ

  1. Ctrl+Shift+P(Windows/Linux) / Command+Shift+P(Mac)๋ฅผ ๋ˆŒ๋Ÿฌ ๋ช…๋ น ํŒ”๋ ˆํŠธ๋ฅผ ์—ฝ๋‹ˆ๋‹ค.

  2. "prompt"๋ฅผ ์ž…๋ ฅํ•˜๊ณ  Chat: Create Prompt๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

  3. .prompt.md ํŒŒ์ผ ์ด๋ฆ„ ํ™•์žฅ๋ช…์„ ์ œ์™ธํ•œ ํ”„๋กฌํ”„ํŠธ ํŒŒ์ผ์˜ ์ด๋ฆ„์„ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฆ„์€ ์˜์ˆซ์ž ๋ฌธ์ž์™€ ๊ณต๋ฐฑ์„ ํฌํ•จํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ํŒŒ์ผ์— ํฌํ•จํ•  ํ”„๋กฌํ”„ํŠธ ์ •๋ณด์˜ ์šฉ๋„๋ฅผ ์„ค๋ช…ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

  4. Markdown ์„œ์‹์„ ์‚ฌ์šฉํ•˜์—ฌ ํ”„๋กฌํ”„ํŠธ ์ง€์นจ์„ ์ž‘์„ฑํ•ฉ๋‹ˆ๋‹ค.

    Markdown ๋งํฌ(์˜ˆ: [index](../../web/index.ts)) ๋˜๋Š” #file:../../web/index.ts ๊ตฌ๋ฌธ์„ ์‚ฌ์šฉํ•˜์—ฌ ์ž‘์—… ์˜์—ญ์˜ ๋‹ค๋ฅธ ํŒŒ์ผ์„ ์ฐธ์กฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฒฝ๋กœ๋Š” ํ”„๋กฌํ”„ํŠธ ํŒŒ์ผ์„ ๊ธฐ์ค€์œผ๋กœ ์ƒ๋Œ€์ ์ž…๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ํŒŒ์ผ์„ ์ฐธ์กฐํ•˜๋ฉด API ์‚ฌ์–‘ ๋˜๋Š” ์ œํ’ˆ ์„ค๋ช…์„œ์™€ ๊ฐ™์€ ์ถ”๊ฐ€ ์ปจํ…์ŠคํŠธ๋ฅผ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํ”„๋กฌํ”„ํŠธ ํŒŒ์ผ ์‚ฌ์šฉ

  1. ๋ณด๊ธฐ ์•„๋ž˜์ชฝ์—์„œ Attach context ์•„์ด์ฝ˜()์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

  2. ๋“œ๋กญ๋‹ค์šด ๋ฉ”๋‰ด์—์„œ Prompt... ๋ฅผ ํด๋ฆญํ•˜๊ณ  ์‚ฌ์šฉํ•  ํ”„๋กฌํ”„ํŠธ ํŒŒ์ผ์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

  3. ํ•„์š”์— ๋”ฐ๋ผ ํ”„๋กฌํ”„ํŠธ ํŒŒ์ผ์„ ๋น„๋กฏํ•œ ์ถ”๊ฐ€ ํŒŒ์ผ์„ ์ฒจ๋ถ€ํ•˜์—ฌ ๋” ๋งŽ์€ ์ปจํ…์ŠคํŠธ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

  4. ํ•„์š”์— ๋”ฐ๋ผ ์ฑ„ํŒ… ํ”„๋กฌํ”„ํŠธ ์ƒ์ž์— ์ถ”๊ฐ€ ์ •๋ณด๋ฅผ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค.

    ์ด ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ํ•„์š”๊ฐ€ ์žˆ๋Š”์ง€์— ๋Œ€ํ•œ ์—ฌ๋ถ€๋Š” ์‚ฌ์šฉ ์ค‘์ธ ํ”„๋กฌํ”„ํŠธ์˜ ๋‚ด์šฉ์— ๋”ฐ๋ผ ๋‹ฌ๋ผ์ง‘๋‹ˆ๋‹ค.

  5. ์ฑ„ํŒ… ํ”„๋กฌํ”„ํŠธ๋ฅผ ์ œ์ถœํ•ฉ๋‹ˆ๋‹ค.

ํ”„๋กฌํ”„ํŠธ ํŒŒ์ผ์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ์€ Visual Studio Code ์„ค๋ช…์„œ์— ์žˆ๋Š” VS Code์˜ GitHub Copilot์— ๋Œ€ํ•œ ์‚ฌ์šฉ์ž ์ง€์ • ์ง€์นจ์„ ์ฐธ์กฐํ•˜์„ธ์š”.