Skip to content

Latest commit

ย 

History

History
160 lines (119 loc) ยท 4.15 KB

File metadata and controls

160 lines (119 loc) ยท 4.15 KB

GitHub ์ž”๋””๋ฐญ ๋Œ€ํ™”ํ˜• ์—๋””ํ„ฐ

ํ‚ค๋ณด๋“œ๋กœ ์ง์ ‘ GitHub ์ž”๋””๋ฐญ ํŒจํ„ด์„ ๊ทธ๋ฆฌ๊ณ  ์‹ค์ œ ์ปค๋ฐ‹์œผ๋กœ ์ƒ์„ฑํ•˜๋Š” ๋„๊ตฌ

์‚ฌ์šฉ ์›Œํฌํ”Œ๋กœ์šฐ

# Step 1: ํŒจํ„ด ๋””์ž์ธ
python3 github_canvas.py
# โ†’ ํŒจํ„ด์„ ๊ทธ๋ฆฌ๊ณ  S๋กœ ์ €์žฅ (patterns/pattern.json)
# โ†’ Q๋กœ ์ข…๋ฃŒ

# Step 2: ์ปค๋ฐ‹ ์ƒ์„ฑ
python3 git_generator.py generate pattern.json 2024
# โ†’ ์‹ค์ œ Git ์ปค๋ฐ‹ ์ƒ์„ฑ

# Step 3: GitHub ํ‘ธ์‹œ
cd ..
git push -f origin main

2๋‹จ๊ณ„ ํ”„๋กœ์„ธ์Šค: github_canvas.py๋Š” ํŒจํ„ด ๋””์ž์ธ๋งŒ, git_generator.py๊ฐ€ ์‹ค์ œ ์ปค๋ฐ‹ ์ƒ์„ฑ


๊ธฐ๋Šฅ

  • ํ„ฐ๋ฏธ๋„์—์„œ ๋Œ€ํ™”ํ˜•์œผ๋กœ ํŒจํ„ด ๊ทธ๋ฆฌ๊ธฐ
  • ์‹ค์‹œ๊ฐ„ ๋ฏธ๋ฆฌ๋ณด๊ธฐ
  • 2๊ฐ€์ง€ ํ‘œ์‹œ ์Šคํƒ€์ผ (์Œ์˜/๋ธ”๋ก) ์ „ํ™˜
  • ํŒจํ„ด ์ €์žฅ/๋ถˆ๋Ÿฌ์˜ค๊ธฐ (JSON)
  • Git ์ปค๋ฐ‹ ์ž๋™ ์ƒ์„ฑ
  • 5๋‹จ๊ณ„ ๊ฐ•๋„ ์กฐ์ ˆ

ํด๋” ๊ตฌ์กฐ

interactive-cli/
โ”œโ”€โ”€ github_canvas.py    # ๋Œ€ํ™”ํ˜• ์—๋””ํ„ฐ
โ”œโ”€โ”€ git_generator.py    # Git ์ปค๋ฐ‹ ์ƒ์„ฑ๊ธฐ
โ”œโ”€โ”€ patterns/           # ํŒจํ„ด ์ €์žฅ ํด๋” (์ž์œ ๋กญ๊ฒŒ ์ถ”๊ฐ€/์‚ญ์ œ ๊ฐ€๋Šฅ)
โ”‚   โ””โ”€โ”€ pattern.json    # ์ €์žฅ๋œ ํŒจํ„ด ํŒŒ์ผ
โ””โ”€โ”€ README.md

patterns ํด๋”:

  • ํŒจํ„ด ํŒŒ์ผ(.json)์ด ์ €์žฅ๋˜๋Š” ํด๋”์ž…๋‹ˆ๋‹ค
  • ํŒŒ์ผ์„ ์ž์œ ๋กญ๊ฒŒ ์ถ”๊ฐ€ํ•˜๊ฑฐ๋‚˜ ์‚ญ์ œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค
  • ์—ฌ๋Ÿฌ ํŒจํ„ด์„ ๋‹ค๋ฅธ ์ด๋ฆ„์œผ๋กœ ์ €์žฅํ•˜์—ฌ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค

์‚ฌ์šฉ๋ฒ•

1. ๋Œ€ํ™”ํ˜• ์—๋””ํ„ฐ ์‹คํ–‰

python3 github_canvas.py

2. ํ‚ค ์กฐ์ž‘๋ฒ•

ํ‚ค ๊ธฐ๋Šฅ
โ†‘โ†“โ†โ†’ ์ปค์„œ ์ด๋™
Space ์…€ ๊ฐ•๋„ ํ† ๊ธ€ (0โ†’1โ†’2โ†’3โ†’4โ†’0)
0-4 ์ง์ ‘ ๊ฐ•๋„ ์„ค์ •
T ํ‘œ์‹œ ์Šคํƒ€์ผ ๋ณ€๊ฒฝ (์Œ์˜ โ†” ๋ธ”๋ก)
Delete/Backspace ์…€ ์ง€์šฐ๊ธฐ
S ํŒจํ„ด ์ €์žฅ (patterns/pattern.json)
L ํŒจํ„ด ๋ถˆ๋Ÿฌ์˜ค๊ธฐ
C ์บ”๋ฒ„์Šค ์ดˆ๊ธฐํ™”
Q / ESC ์ข…๋ฃŒ (์ €์žฅ ํ™•์ธ)

ํ‘œ์‹œ ์Šคํƒ€์ผ

์Œ์˜ ์Šคํƒ€์ผ (๊ธฐ๋ณธ):

  • โฌœ โ–‘โ–‘ โ–’โ–’ โ–“โ–“ โ–ˆโ–ˆ
  • ๊ฐ•๋„ ์ฐจ์ด๊ฐ€ ๋ช…ํ™•ํ•˜๊ฒŒ ๋ณด์ž…๋‹ˆ๋‹ค

๋ธ”๋ก ์Šคํƒ€์ผ:

  • ๋ฐฐ๊ฒฝ์ƒ‰์ด ์ฑ„์›Œ์ง€๋Š” ๊ธฐ์กด ๋ฐฉ์‹
  • GitHub ์ž”๋””๋ฐญ๊ณผ ์œ ์‚ฌํ•œ ๋А๋‚Œ

3. ํŒจํ„ด ๋ฏธ๋ฆฌ๋ณด๊ธฐ

python3 git_generator.py preview pattern.json

4. Git ์ปค๋ฐ‹ ์ƒ์„ฑ

python3 git_generator.py generate pattern.json
# ๋˜๋Š” ํŠน์ • ์—ฐ๋„ ์ง€์ •
python3 git_generator.py generate pattern.json 2024

5. GitHub์— ํ‘ธ์‹œ

git push -f origin main

๊ฐ•๋„ ๋ ˆ๋ฒจ

  • 0: ๋น„์–ด์žˆ์Œ (์ปค๋ฐ‹ ์—†์Œ)
  • 1: ์—ฐํ•œ ์ดˆ๋ก (1-3๊ฐœ ์ปค๋ฐ‹)
  • 2: ์ค‘๊ฐ„ ์ดˆ๋ก (4-7๊ฐœ ์ปค๋ฐ‹)
  • 3: ์ง„ํ•œ ์ดˆ๋ก (8-12๊ฐœ ์ปค๋ฐ‹)
  • 4: ๋งค์šฐ ์ง„ํ•œ ์ดˆ๋ก (13-20๊ฐœ ์ปค๋ฐ‹)

์˜ˆ์ œ ์›Œํฌํ”Œ๋กœ์šฐ

  1. ์—๋””ํ„ฐ๋ฅผ ์—ด๊ณ  ์›ํ•˜๋Š” ํŒจํ„ด์„ ๊ทธ๋ฆฝ๋‹ˆ๋‹ค
  2. T ํ‚ค๋กœ ์Šคํƒ€์ผ์„ ๋ณ€๊ฒฝํ•˜๋ฉฐ ๋ฏธ๋ฆฌ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค
  3. S๋ฅผ ๋ˆŒ๋Ÿฌ patterns/pattern.json์— ์ €์žฅํ•ฉ๋‹ˆ๋‹ค
  4. Q๋กœ ์—๋””ํ„ฐ๋ฅผ ์ข…๋ฃŒํ•ฉ๋‹ˆ๋‹ค
  5. python3 git_generator.py generate pattern.json๋กœ ์ปค๋ฐ‹ ์ƒ์„ฑ
  6. git push -f origin main์œผ๋กœ GitHub์— ํ‘ธ์‹œ

์—ฌ๋Ÿฌ ํŒจํ„ด ๊ด€๋ฆฌ

๋‹ค๋ฅธ ์ด๋ฆ„์œผ๋กœ ํŒจํ„ด์„ ์ €์žฅํ•˜๋ ค๋ฉด:

  1. ์—๋””ํ„ฐ์—์„œ ํŒจํ„ด์„ ๊ทธ๋ฆฝ๋‹ˆ๋‹ค
  2. ์ข…๋ฃŒ ํ›„ patterns/pattern.json์„ ๋‹ค๋ฅธ ์ด๋ฆ„์œผ๋กœ ๋ณต์‚ฌํ•ฉ๋‹ˆ๋‹ค
    cp patterns/pattern.json patterns/flower.json
    cp patterns/pattern.json patterns/heart.json
  3. ์›ํ•˜๋Š” ํŒจํ„ด์œผ๋กœ ์ปค๋ฐ‹ ์ƒ์„ฑ:
    python3 git_generator.py generate flower.json 2024

ํŒจํ„ด ํŒŒ์ผ ํ˜•์‹

ํŒจํ„ด์€ JSON ํ˜•์‹์œผ๋กœ patterns/ ํด๋”์— ์ €์žฅ๋ฉ๋‹ˆ๋‹ค:

{
  "grid": [
    [0, 0, 1, 0, 0, ...],
    [0, 1, 2, 1, 0, ...],
    ...
  ],
  "width": 52,
  "height": 7,
  "created": "2024-12-31T09:00:00"
}

์ฃผ์˜์‚ฌํ•ญ

  • git push -f๋Š” ๊ธฐ์กด ์ปค๋ฐ‹ ํžˆ์Šคํ† ๋ฆฌ๋ฅผ ๋ฎ์–ด์”๋‹ˆ๋‹ค
  • ์ค‘์š”ํ•œ ์ €์žฅ์†Œ์—๋Š” ์‚ฌ์šฉํ•˜์ง€ ๋งˆ์„ธ์š”
  • ํŒจํ„ด์€ 7์ค„(์š”์ผ) x 52์นธ(์ฃผ) ํฌ๊ธฐ์ž…๋‹ˆ๋‹ค
  • patterns/ ํด๋”์˜ ํŒŒ์ผ์€ ์ž์œ ๋กญ๊ฒŒ ์ถ”๊ฐ€/์‚ญ์ œ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค