i18n-download-force
Google Sheets의 데이터로 로컬 번역을 완전히 덮어씁니다
위험: 데이터 손실 가능
이 명령어는 로컬 번역 파일을 Google Sheets의 데이터로 완전히 덮어씁니다. 로컬에만 있는 번역이 모두 삭제됩니다. 일반적으로 i18n-download를 사용하는 것이 안전합니다.
개요
i18n-download-force는 Google Sheets를 단일 진실 공급원(Single Source of Truth)으로 사용할 때를 위한 명령어입니다. 로컬 번역 파일을 Sheets의 데이터로 완전히 대체합니다.
사용 시기
Google Sheets를 마스터로 사용
모든 번역 작업이 Google Sheets에서만 이루어지고, 로컬 파일은 단순히 Sheets의 복사본인 경우
로컬 변경사항이 없음을 확신
로컬에서 번역을 직접 수정하지 않고, Sheets에서만 번역을 관리하는 경우
로컬 파일 리셋 필요
로컬 파일이 손상되었거나 문제가 있어서 Sheets의 깨끗한 버전으로 다시 시작하고 싶은 경우
사용법
설정 파일 사용
npx i18n-download-force명령줄 옵션 사용
npx i18n-download-force \
--spreadsheet-id "YOUR_SPREADSHEET_ID" \
--credentials "./credentials.json"작동 방식
Sheets 데이터 가져오기
Google Sheets에서 모든 번역을 읽어옵니다.
로컬 파일 삭제
기존 로컬 번역 파일의 내용을 완전히 지웁니다.
Sheets 데이터 쓰기
Sheets의 번역을 로컬 파일에 씁니다. 병합 없음.
예제 출력
$ npx i18n-download-force --spreadsheet-id "1abc...xyz"
[warning] WARNING: This will overwrite all local translations!
[sheets] Reading from Google Sheets...
Spreadsheet: "i18n Translations"
Sheet: "Translations"
✓ Found 128 translation keys
Languages: ko, en
[sync] Force overwriting local files...
✗ Removed all existing local data
✓ locales/ko.json (128 keys)
✓ locales/en.json (128 keys)
[done] Force download complete!
Total keys: 128
All local files replaced with Sheets datai18n-download와 비교
| 특성 | i18n-download | i18n-download-force |
|---|---|---|
| 로컬 번역 보존 | ✓ | ✗ |
| 스마트 병합 | ✓ | ✗ |
| 안전성 | 안전함 | 주의 필요 |
| 사용 빈도 | 자주 사용 | 드물게 사용 |
| 권장 사용 | 일반적인 경우 | 특수한 경우 |
안전 대책
실행 전 Git 커밋
명령 실행 전에 현재 상태를 Git에 커밋하세요. 문제가 생기면 되돌릴 수 있습니다.
git add locales/
git commit -m "backup before force download"
npx i18n-download-force백업 생성
로컬 번역 파일을 다른 위치에 백업한 후 명령을 실행하세요.
Sheets 내용 확인
Google Sheets의 내용이 올바른지 확인한 후 다운로드하세요.
모범 사례
❌일반적으로 사용하지 마세요
대부분의 경우 i18n-download를 사용하는 것이 더 안전합니다.
명확한 워크플로우 정의
팀에서 Google Sheets를 단일 진실 공급원으로 사용하기로 명확히 합의한 경우에만 사용하세요.
CI/CD에서 사용
자동화된 배포 파이프라인에서 Sheets로부터 항상 최신 번역을 가져오는 용도로 사용할 수 있습니다.