|
Dokumentation
Demo buchenPlattform
PlattformMCPCLIAPIWorkflows
LeitfädenChangelog

Kontinuierliche Lokalisierung

  • So funktioniert's
  • Einrichtung

Plattformen

  • GitHub App
  • GitHub Actions
  • GitLab CI/CD
  • Bitbucket Pipelines
  • Fortgeschrittene Muster

GitHub Actions

Die offizielle GitHub Action von Lingo.dev führt bei jedem Push die Lokalisierungs-Pipeline aus und committet Übersetzungen direkt oder erstellt – je nach Workflow – einen Pull Request.

Lieber ein verwaltetes Setup?

Die GitHub App ist der einfachste Weg, kontinuierliche Lokalisierung auf GitHub auszuführen: einmal installieren, und sie reagiert auf Pushes und Pull Requests – ganz ohne Runner, API-Key-Secret oder Lockfile. Nutze die GitHub Action (unten), wenn Übersetzungen innerhalb deiner eigenen Pipeline zusammen mit anderen CI-Schritten laufen sollen.

Voraussetzungen

Schließe zuerst das CI/CD-Setup ab. Du brauchst ein funktionierendes i18n.json und LINGODOTDEV_API_KEY, gespeichert als Repository-Secret.

Minimales Setup#

Erstelle .github/workflows/translate.yml:

yaml
name: Translate
on:
  push:
    branches: [main]
permissions:
  contents: write
jobs:
  translate:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - name: Lingo.dev
        uses: lingodotdev/lingo.dev@main
        with:
          api-key: ${{ secrets.LINGODOTDEV_API_KEY }}

Damit werden Übersetzungen bei jedem Push direkt in main committet.

Workflow-Beispiele#

Commit auf main#

yaml
name: Translate
on:
  push:
    branches: [main]
permissions:
  contents: write
jobs:
  translate:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - name: Lingo.dev
        uses: lingodotdev/lingo.dev@main
        with:
          api-key: ${{ secrets.LINGODOTDEV_API_KEY }}

Pull Request von main#

yaml
name: Translate
on:
  push:
    branches: [main]
permissions:
  contents: write
  pull-requests: write
jobs:
  translate:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - name: Lingo.dev
        uses: lingodotdev/lingo.dev@main
        with:
          api-key: ${{ secrets.LINGODOTDEV_API_KEY }}
          pull-request: true
        env:
          GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}

Aktiviere für PR-basierte Workflows Settings > Actions > General > Allow GitHub Actions to create and approve pull requests.

Commit auf einen Feature-Branch#

yaml
name: Translate
on:
  push:
    branches-ignore: [main]
permissions:
  contents: write
jobs:
  translate:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - name: Lingo.dev
        uses: lingodotdev/lingo.dev@main
        with:
          api-key: ${{ secrets.LINGODOTDEV_API_KEY }}

Pull Request von einem Feature-Branch#

yaml
name: Translate
on:
  push:
    branches-ignore: [main]
permissions:
  contents: write
  pull-requests: write
jobs:
  translate:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - name: Lingo.dev
        uses: lingodotdev/lingo.dev@main
        with:
          api-key: ${{ secrets.LINGODOTDEV_API_KEY }}
          pull-request: true
        env:
          GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}

Verfügbare Inputs#

InputStandardBeschreibung
api-keyErforderlichLingo.dev API-Key
pull-requestfalseErstellt einen Pull Request statt direkt zu committen
commit-messagefeat: update translations via @LingoDotDevEigene Commit-Nachricht
pull-request-titlefeat: update translations via @LingoDotDevEigener PR-Titel
commit-author-nameLingo.devName des Git-Commit-Autors
commit-author-emailsupport@lingo.devE-Mail-Adresse des Git-Commit-Autors
working-directory.Arbeitsverzeichnis für Monorepos
process-own-commitsfalseCommits verarbeiten, die von dieser Action erstellt wurden
parallelfalseIm Parallelmodus ausführen
versionlatestVersion der Lingo.dev CLI

Nächste Schritte#

GitHub App
Verwaltete Alternative – ohne Runner, Secret oder Lockfile
Erweiterte Patterns
Übersetzungsprüfungen, Merge-Konflikte, Workflow-Auswahl
GitLab CI/CD
GitLab-CI/CD-Integration einrichten
Bitbucket Pipelines
Bitbucket-Pipelines-Integration einrichten

War diese Seite hilfreich?

Max PrilutskiyMax Prilutskiy·Aktualisiert vor 29 Tagen·2 Min. Lesezeit