Fichier de verrouillage i18n.lock
i18n.lock est un fichier de verrouillage qui suit les sommes de contrôle du contenu pour éviter les retraductions inutiles et optimiser les performances de la CLI Lingo.dev.
i18n.lock stocke les sommes de contrôle du contenu source et des clés de traduction pour identifier ce qui a changé entre les cycles de traduction. Par conséquent, seul le contenu nouveau ou modifié est traduit, réduisant ainsi le temps de traitement et les coûts de traduction.
Structure du fichier de verrouillage
i18n.lock utilise un format YAML structuré pour stocker les sommes de contrôle du contenu :
version: 1
checksums:
a07974ea09011daa56f9df706530e442:
key: f8692d39317193acf0e2e47172703c46
b18975fb19122ebb67g0ef817641f553:
key: g9703e40428204bdf1f3f58283814d57
Éléments de configuration :
version
— Version du schéma du fichier de verrouillage pour la compatibilité de migrationchecksums
— Cartographie des sommes de contrôle du contenu aux sommes de contrôle des clés qui suit le contenu traduitchecksums.[content-hash]
— Hachage SHA-256 du contenu source qui sert d'identifiant uniquechecksums.[content-hash].key
— Hachage SHA-256 de la clé de traduction qui permet la détection de renommage de clé
Lingo.dev CLI préserve les traductions existantes lorsqu'il détecte un contenu identique avec différentes sommes de contrôle de clés. Aucune retraduction n'a lieu, maintenant ainsi la cohérence des traductions tout en permettant des changements d'organisation des clés. En savoir plus sur le renommage des clés.
Intégration dans le flux de travail
i18n.lock fonctionne automatiquement pendant les flux de travail de traduction :
Première exécution — Crée un fichier de verrouillage avec les sommes de contrôle initiales du contenu :
npx lingo.dev@latest i18n
# Crée i18n.lock avec toutes les sommes de contrôle du contenu source
Recréation du fichier de verrouillage — Recrée le fichier de verrouillage à partir de zéro :
npx lingo.dev@latest lockfile --force
# Recrée i18n.lock avec toutes les sommes de contrôle du contenu source
Conseil : vous pouvez utiliser cette commande en toute sécurité pour réinitialiser le fichier de verrouillage à son état réel lors de la résolution des conflits de fusion.
Exécutions suivantes — Traite uniquement le contenu modifié :
npx lingo.dev@latest i18n
# Compare le contenu actuel avec i18n.lock
# Traduit uniquement le contenu nouveau ou modifié
Forcer la retraduction — Contourne l'optimisation du fichier de verrouillage et retraduit tout le contenu, recréant ainsi le fichier de verrouillage :
npx lingo.dev@latest i18n --force
# Ignore i18n.lock et retraduit tout le contenu
Vérification figée — Valide l'exhaustivité de la traduction :
npx lingo.dev@latest i18n --frozen
# Échoue si un contenu nécessite une traduction
# Utilisé dans CI/CD pour garantir des traductions complètes
Intégration avec le contrôle de version
i18n.lock doit être validé dans le contrôle de version avec les fichiers de traduction.
Le fichier de verrouillage est une partie essentielle du système de traduction incrémentielle de Lingo.dev CLI, le rendant pratique pour des projets de toute taille.