i18n.lock

Zuletzt aktualisiert: vor 3 Monaten · 2 Min. Lesezeit

Veraltet

Diese Doku behandelt die alte CLI (v0). Die aktuelle CLI ist v1. Zur aktuellen CLI-Doku

i18n.lock ist eine Lockfile, die SHA-256-Fingerprints Ihrer Quellinhalte speichert. Die Lingo.dev CLI vergleicht diese Fingerprints bei jedem Lauf, um zu erkennen, welche Strings neu oder geändert sind – nur diese gelangen in die Übersetzungspipeline. Alles andere wird übersprungen.

Struktur#

Die Lockfile verwendet das YAML-Format:

yaml
version: 1
checksums:
  a07974ea09011daa56f9df706530e442:
    title: f8692d39317193acf0e2e47172703c46
    description: g9703e40428204bdf1f3f58283814d57
FeldBeschreibung
versionVersion des Lockfile-Schemas.
checksumsZuordnung von Content-Fingerprints. Jeder Eintrag ordnet einen Hash des Quellinhalts einem Schlüssel-Hash zu.

Die Dual-Hash-Struktur (Content-Hash + Schlüssel-Hash) ermöglicht die Erkennung von Schlüsselumbenennungen – die CLI behält bestehende Übersetzungen bei, wenn ein Schlüssel umbenannt wird, der Inhalt aber gleich bleibt.

Workflow#

Erster Lauf – erstellt die Lockfile mit Fingerprints für alle Quellinhalte:

bash
npx lingo.dev@latest run
# Creates i18n.lock

Weitere Läufe – übersetzen nur das Delta:

bash
npx lingo.dev@latest run
# Compares against i18n.lock, translates only changes

Neuübersetzung erzwingen – umgeht die Lockfile und übersetzt alles erneut:

bash
npx lingo.dev@latest run --force

Lockfile neu erstellen – erstellt die Lockfile aus dem aktuellen Stand Ihrer Quelldateien neu:

bash
npx lingo.dev@latest lockfile --force

Verwenden Sie lockfile --force, um die Lockfile bei der Auflösung von Merge-Konflikten zurückzusetzen. Die Ausführung ist jederzeit sicher.

Frozen Verification – schlägt fehl, wenn Inhalte übersetzt werden müssen (für CI/CD konzipiert):

bash
npx lingo.dev@latest run --frozen

Deduplizierung#

Beim Zusammenführen von Branches kann die Lockfile-YAML doppelte Einträge ansammeln. Die CLI dedupliziert sie bei jedem Laden automatisch – doppelte Schlüssel innerhalb desselben Prüfsummenblocks werden aufgelöst, indem das letzte Vorkommen beibehalten wird. Wenn Duplikate entfernt werden, protokolliert die CLI deren Anzahl.

Die Deduplizierung läuft bei allen Befehlen, die die Lockfile lesen: run, status, lockfile und weiteren.

Versionskontrolle#

i18n.lock muss zusammen mit Ihren Sprachdateien in Ihr Repository eingecheckt werden. Sie ist der Mechanismus, der inkrementelle Übersetzungen möglich macht – ohne sie würde bei jedem Lauf das gesamte Projekt neu übersetzt.

Nächste Schritte#