콘텐츠로 이동

?쒓? ?뚯씪紐??몄퐫??臾몄젣 ?닿껐 諛⑹븞

臾몄젣 ?곹솴

MkDocs + Firebase ?꾨줈?앺듃?먯꽌 ?쒓? ?뚯씪紐?泥섎━ ??Windows Bash ?섍꼍?먯꽌 ?몄퐫???ㅻ쪟 諛쒖깮:

# ?ㅽ뙣: Bash媛€ ?쒓? ?뚯씪紐낆쓣 Python???쒕?濡??꾨떖?섏? 紐삵븿
python scripts/validate_opinion.py docs/opinions/2026-02-09-?좏븳-由щ갭?곗떛.md
# Error: No such file or directory

梨꾪깮???붾(??

1. deploy.py??寃€利??듯빀 (二??닿껐梨?

?뚯씪: scripts/deploy.py

# 諛고룷 ???ㅽ뵾?덉뼵 寃€利?(?몄퐫??臾몄젣 ?뚰뵾)
from validate_opinion import validate_all_opinions
results = validate_all_opinions()  # Path.glob() ?ъ슜, Bash 寃쎌쑀 ?놁쓬

?μ젏: - Bash瑜?嫄곗튂吏€ ?딄퀬 Python ?대??먯꽌 Path.glob('*.md') ?ъ슜 - ?뚯씪紐??몄퐫??臾몄젣 ?꾩쟾 ?뚰뵾 - 諛고룷 ???먮룞 寃€利? ?섎룞 ?ㅽ뻾 遺덊븘??

2. validate_opinion.py 媛쒖꽑 (蹂댁“ ?닿껐梨?

?뚯씪: scripts/validate_opinion.py (414-450以?

# Windows ?쒓? ?뚯씪紐??몄퐫??臾몄젣 ?€??raw_path = sys.argv[1]
file_path = Path(raw_path)

# ?뚯씪???놁쑝硫?glob?쇰줈 ?⑦꽩 留ㅼ묶 ?쒕룄
if not file_path.exists():
    opinions_dir = Path(__file__).parent.parent / 'docs' / 'opinions'
    filename_only = Path(raw_path).name
    for candidate in opinions_dir.glob('**/*.md'):
        if candidate.name == filename_only:
            file_path = candidate
            break

?μ젏: - Bash?먯꽌 ?뚯씪紐낅쭔 ?꾨떖諛쏆븘??glob?쇰줈 李얠븘??- python validate_opinion.py 2026-02-09-?좏븳-由щ갭?곗떛.md ?뺥깭 吏€??

3. Pre-commit hook ?먮룞??

?뚯씪: .git/hooks/pre-commit

# ?ㅽ뵾?덉뼵 寃€利?(?몄퐫???덉쟾)
python scripts/validate_opinion.py
if [ $? -ne 0 ]; then
  echo "[ABORT] Commit aborted due to validation errors."
  exit 1
fi

?뱀쭠: - ?몄옄 ?놁씠 ?ㅽ뻾 ??validate_all_opinions() ?몄텧 - Python ?대? glob ?ъ슜?쇰줈 ?쒓? ?뚯씪紐??덉쟾

?듭떖 ?먯튃

DO ??```python

Python ?대??먯꽌 ?뚯씪 ?먯깋

from pathlib import Path for f in Path('docs/opinions').glob('*.md'): validate_opinion(str(f))

### DON'T ??```bash
# Bash?먯꽌 ?쒓? ?뚯씪紐??꾨떖
python validate.py docs/opinions/?쒓??뚯씪紐?md
# ??Windows Bash ?몄퐫??臾몄젣 諛쒖깮

沅뚯옣 ?뚰겕?뚮줈??

濡쒖뺄 媛쒕컻

  1. ?뚯씪 ?묒꽦: docs/<public-doc>.md (Write ?꾧뎄)
  2. Python?쇰줈 蹂듭궗: shutil.copy2(src, 'docs/opinions/?쒓??뚯씪.md')
  3. Git commit ??pre-commit hook ?먮룞 寃€利?(Python glob)
  4. 諛고룷: python scripts/deploy.py -m "硫붿떆吏€" (Python glob)

CI/CD

# GitHub Actions ?덉떆
- name: Validate opinions
  run: python scripts/validate_opinion.py  # ?몄옄 ?놁쓬 ??glob ?ъ슜

?뚯뒪??寃곌낵

# ?꾩껜 寃€利?(?덉쟾)
$ python scripts/validate_opinion.py
Total: 36媛? Failed: 3媛? # ???뺤긽 ?묐룞

# 媛쒕퀎 ?뚯씪 (Bash ?쒓? 臾몄젣)
$ python scripts/validate_opinion.py docs/opinions/?쒓?.md
Error: No such file or directory  # ??Bash ?몄퐫???ㅻ쪟

# deploy.py ?듯빀 (?덉쟾)
$ python scripts/deploy.py -m "update"
[OK] 36媛??ㅽ뵾?덉뼵 寃€利??듦낵  # ??Python ?대? glob

寃곕줎

  • Bash ??Python ?뚯씪紐??꾨떖 湲덉? (?쒓? 源⑥쭚)
  • Python ?대? glob ?ъ슜 (Path.glob(), validate_all_opinions())
  • deploy.py ?듯빀?쇰줈 ?섎룞 寃€利??④퀎 ?쒓굅
  • Pre-commit hook?쇰줈 濡쒖뺄 媛쒕컻 ?덉쟾?μ튂 ?뺣낫

?묒꽦?? 2026-02-09 愿€???댁뒋: Windows Bash ?쒓? ?몄퐫???뚯뒪???섍꼍: Windows 11, Python 3.11, Git Bash