📥
i18n-download
Google Sheets의 번역을 안전하게 로컬로 다운로드합니다
개요
i18n-download는 Google Sheets의 번역을 로컬 JSON 파일로 다운로드하는 CLI 도구입니다. 증분 업데이트 방식으로 기존 번역을 보존하며 안전하게 병합합니다.
✓기존 로컬 번역 보존
✓Sheets의 변경사항만 안전하게 병합
✓자동 충돌 해결
✓상세한 변경 내역 표시
기본 사용법
설정 파일 사용
i18nexus.config.json에 Google Sheets 정보가 설정되어 있다면:
npx i18n-download명령줄 옵션 사용
npx i18n-download \
--spreadsheet-id "YOUR_SPREADSHEET_ID" \
--credentials "./credentials.json"작동 방식
1
Sheets 데이터 가져오기
Google Sheets에서 모든 번역 데이터를 읽어옵니다.
2
로컬 데이터 읽기
기존 로컬 번역 파일을 읽어옵니다.
3
스마트 병합
두 데이터를 지능적으로 병합합니다:
- •Sheets에 있는 키: 값을 업데이트
- •로컬에만 있는 키: 그대로 유지
- •Sheets에 새로 추가된 키: 로컬에 추가
4
파일 저장
병합된 결과를 로컬 파일에 저장하고 변경 내역을 표시합니다.
명령어 옵션
--spreadsheet-id문자열Google Sheets의 Spreadsheet ID (필수)
--credentials문자열Google Cloud 서비스 계정 인증 정보 JSON 파일 경로 (필수)
--sheet-name문자열읽을 시트 이름 (기본값: "Translations")
--locales-dir문자열번역 파일 저장 디렉토리 (기본값: "./locales")
예제 출력
$ npx i18n-download --spreadsheet-id "1abc...xyz"
📥 Downloading translations from Google Sheets...
📊 Reading from Sheets...
Spreadsheet: "i18n Translations"
Sheet: "Translations"
✓ Found 130 translation keys
Languages: ko, en
📁 Reading local files...
✓ locales/ko.json (125 keys)
✓ locales/en.json (125 keys)
🔄 Merging translations...
✓ Updated: 3 keys
✓ Added: 5 new keys
✓ Preserved: 122 local keys
💾 Saving files...
✓ locales/ko.json (130 keys)
✓ locales/en.json (130 keys)
✅ Download complete!
Total keys: 130
Changes: +5 new, ~3 updated안전 기능
데이터 손실 방지
- ✓로컬 번역 보존
로컬에만 있는 번역 키는 절대 삭제되지 않습니다.
- ✓충돌 자동 해결
같은 키가 양쪽에 있으면 Sheets의 값을 우선합니다.
- ✓백업 권장
Git 등의 버전 관리를 사용하면 언제든 이전 상태로 복구할 수 있습니다.
i18n-download vs i18n-download-force
📥i18n-download
- ✓증분 업데이트
- ✓로컬 번역 보존
- ✓안전한 병합
- ✓일상적으로 사용
💡 대부분의 경우 이것을 사용하세요
🔄i18n-download-force
- •전체 덮어쓰기
- •로컬 번역 삭제
- •Sheets = 단일 진실 공급원
- •주의해서 사용
⚠️ 특별한 경우에만 사용하세요
모범 사례
✅정기적으로 다운로드
번역가가 작업을 완료하면 정기적으로 다운로드하여 번역을 최신 상태로 유지하세요.
✅Git 커밋
다운로드 후 변경사항을 Git에 커밋하여 팀원들과 공유하세요.
✅변경 내역 검토
다운로드 후 출력되는 변경 내역을 확인하여 예상치 못한 변경이 없는지 검토하세요.