|
Dokumentace
Rezervovat demoPlatforma
PlatformaMCPCLIAPIWorkflows
NávodyChangelog

Průběžná lokalizace

  • Jak to funguje
  • Nastavení

Platformy

  • GitHub App
  • GitHub
  • GitLab CI/CD
  • Bitbucket Pipelines
  • Pokročilé postupy

Pokročilé postupy

Pokročilé postupy pro lokalizaci v CI/CD – výběr workflow, kontrola úplnosti překladů a řešení merge konfliktů.

Jak vybrat workflow#

Čtyři workflow pokrývají většinu týmových setupů. Každé z nich přináší jiné kompromisy v oblasti automatizace, nároků na kontrolu a čistoty práce s větvemi.

WorkflowNejvhodnější proNevýhoda
Commit do mainMalé týmy, aktualizace bez zbytečných překážekBez kroku kontroly překladů
PR z mainTýmy, které chtějí překlady kontrolovatVyžaduje ruční schválení PR
Commit do feature brancheDlouho žijící feature brancheCommit y s překlady zůstávají v historii branche
PR z feature brancheMaximální kontrola nad každou featureJe potřeba spravovat více PR pro každou feature

Na GitHubu většinu těchto scénářů obslouží na serverové straně Lingo.dev GitHub App — reaguje na push a PR, zapisuje překlady zpět do repozitáře a nepotřebuje runner ani secret. Po CLI postupech níže sáhněte ve chvíli, kdy lokalizaci provozujete ve vlastním pipeline.

Pokud si nejste jistí, začněte s „Commit do main“. Je to nejjednodušší workflow a úplně eliminuje merge konflikty, protože mezi větvemi nevzniká divergence.

Kontrola úplnosti překladů#

Příkaz lingo check ověří, že je přeložený veškerý obsah, aniž by vytvářel nové překlady. Pokud něco chybí, skončí s nenulovým návratovým kódem:

bash
lingo check

Použijte to jako kontrolu před nasazením, abyste zabránili vydání nepřeloženého obsahu. CLI nainstalujete pomocí npm install -g @lingo.dev/cli (Node 22+) a runner autentizujete proměnnou prostředí LINGO_API_KEY.

yaml
name: Check translations
on: [push, pull_request]
jobs:
  check:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-node@v4
        with:
          node-version: 22
      - run: npm install -g @lingo.dev/cli
      - run: lingo check
        env:
          LINGO_API_KEY: ${{ secrets.LINGO_API_KEY }}

Řešení merge konfliktů#

Merge konflikty vznikají, když se soubor .lingo/lock.json mezi větvemi rozchází – typicky když se překlady aktualizují nezávisle v různých větvích.

Jak jim předejít#

Když budete commity s překlady zapisovat přímo do main (místo používání feature branchí pro překlady), konflikty v lockfile úplně zmizí.

Řešení pomocí merge#

1

Spusťte merge

bash
git merge <branch-name>
2

Smažte konfliktní lockfile

bash
rm .lingo/lock.json
3

Dokončete merge

bash
git add .
git merge --continue
4

Znovu vygenerujte lockfile

bash
lingo push

Spuštění lingo push v rámci běžné synchronizace znovu vygeneruje .lingo/lock.json podle aktuálního stavu zdrojových souborů.

Řešení pomocí rebase#

Stejný postup funguje i při rebase — v každém kroku konfliktu smažte .lingo/lock.json, pokračujte v rebase a nakonec spusťte lingo push, čímž lockfile znovu vygenerujete:

bash
git rebase <branch-name>
# On each conflict: rm .lingo/lock.json && git add . && git rebase --continue
lingo push

Další kroky#

GitHub App
Automatizujte lokalizaci na GitHubu bez runneru
lingo push
Synchronizujte zdrojový obsah a překlady
Jak to funguje
Lokalizační pipeline v CI/CD
Nastavení
Nakonfigurujte CI/CD pro svůj projekt

Byla tato stránka užitečná?

Max PrilutskiyMax Prilutskiy·Aktualizováno před 23 dny·3 min čtení