Integrationen

GitHub (Strings)

Inhalte werden von Phrase Language AI maschinell aus dem Englischen übersetzt.

Tipp

Informationen zur GitHub-Integration in Phrase TMS sind unter GitHub (TMS) zu finden.

Phrase Strings lässt sich in GitHub-Repositorys integrieren, um Lokalisierungsdateien zwischen Phrase und GitHub zu synchronisieren.

Standardmäßig werden Repositorys über eine GitHub OAuth App verbunden. Persönliche Zugriffstoken werden ebenfalls unterstützt und sind hauptsächlich für selbst gehostete Instanzen oder Umgebungen gedacht, in denen eine OAuth App-Installation nicht möglich ist.

Voraussetzungen

  • Die .phrase.yml Konfigurationsdatei muss im Stammverzeichnis des zu überwachenden Branches vorhanden sein. Die Datei legt fest, welche Dateien aus dem Repository importiert (pull) oder exportiert (push) werden sollen.

  • Für das Repository ist Lese- und Schreibzugriff erforderlich.

  • Falsch festgelegte Konfigurationsdateien können Fehler verursachen. Stelle sicher, dass die Datei mindestens ein Push- und ein Pull-Ziel, die korrekten Dateiformate und die korrekte Einstellung des Parameters update_translations enthält.

  • GitHub OAuth App:

    • Die GitHub OAuth App muss in der GitHub-Organisation oder dem Konto installiert sein, dem das Repository gehört.

    • Das Repository muss in der OAuth App-Installation enthalten sein.

    • Berechtigungen zur Installation oder Autorisierung von GitHub Apps sind in der Zielorganisation oder dem Zielkonto erforderlich.

    • Unterstützt die Verbindung eines Strings-Kontos mit mehreren GitHub-Organisationen. In der Integrationskonfiguration kann ausgewählt werden, welche GitHub-Organisation synchronisiert wird. Es gibt keine feste Begrenzung für die Anzahl der Organisationen, die verbunden werden können.

  • GitHub-Zugriffstoken:

    • Klassische Token

      Erfordert den repo-Bereich (public_repo bei der Synchronisierung mit einem öffentlichen Repository)

    • Feingranulare Token

      Erfordert die folgenden Berechtigungen:

      • Inhalte: Lesen und schreiben

      • Pull-Requests: Lesen und schreiben

    • Stelle sicher, dass für die Repository-Einstellungen keine signierten Commits erforderlich sind.

  • Wenn SSO in GitHub aktiviert ist, muss es auch für das Zugriffstoken aktiviert werden.

  • Der Branch phrase_translations kann nicht geschützt werden.

Hinweis

Aufgrund kontinuierlicher Verbesserungen kann die Benutzeroberfläche nicht genau so aussehen wie im Video dargestellt.

Repositories verbinden

Sobald die Konfigurationsdatei vorhanden ist, können folgende Schritte befolgt werden, um ein Repository zu verbinden:

  1. In der Hauptnavigation wird auf Automatisierungen und anschließend auf Repo-Synchronisierungen geklickt.

    Alternativ kann auf der Seite Integrationen nach unten gescrollt werden, bis Repo-Synchronisierung erscheint, und anschließend wird auf Konfigurieren geklickt.

    Die Seite Repo Syncs wird geöffnet. Die Liste Repo Syncs zeigt nur Projekte an, auf die der betrachtende Benutzer Zugriff hat.

  2. Auf Add Sync/GitHub ist zu klicken.

    Das Einstellungsfenster GitHub-Synchronisierung wird geöffnet.

  3. Aus der Dropdown-Liste kann ein Projekt ausgewählt werden.

  4. Die Authentifizierungsmethode kann ausgewählt werden:

    • GitHub App (empfohlen)

      Falls die GitHub-App noch nicht installiert ist, sollte auf Authentifizieren geklickt werden. Die Authentifizierung wird einmalig durchgeführt und kann für mehrere Repository-Synchronisierungen wiederverwendet werden.

      Falls die GitHub-App bereits installiert ist, sollte auf Installation verwalten geklickt werden, um die App-Installation für die Zielorganisation oder das Zielkonto abzuschließen. Der Repository-Zugriff wird auf Organisations- oder Kontoebene verwaltet und ist nicht an einen einzelnen GitHub-Benutzer gebunden.

    • Persönliches Zugriffstoken

      Ein persönliches Repo-Zugriffstoken mit einem API-Bereich muss angegeben werden.

      Bei Verwendung eines persönlichen Zugriffstokens hängt der Repository-Zugriff von dem GitHub-Benutzer ab, der das Token erstellt hat.

    • Selbstgehostete Instanz

      Der selbst gehostete GitHub-API-Endpunkt sowie ein persönliches Repo-Zugriffstoken mit einem API-Bereich müssen angegeben werden.

    Wenn das Ziel-Repository verifizierte (signierte) Commits erfordert, sollte die Authentifizierungsmethode über die GitHub-App verwendet werden. Commits, die mit einem persönlichen Zugriffstoken übertragen werden, sind nicht signiert, daher schlägt die Synchronisierung mit dem folgenden Fehler fehl: „Das Repository erfordert verifizierte (signierte) Commits.“

  5. Wenn die GitHub-App verwendet wird, kann aus der Dropdown-Liste die Connected GitHub organization ausgewählt werden. Die Repository-Liste wird basierend auf dieser Auswahl geladen.

  6. Aus der Dropdown-Liste kann ein GitHub repository ausgewählt werden.

  7. Aus der Dropdown-Liste kann ein Repository branch ausgewählt werden, von dem importiert (Push) und in den exportiert (Pull) werden soll. Dies ist normalerweise der Master-Branch.

  8. Optional kann ein Branch-Name für den Pull Request angegeben werden. Wenn das Feld leer bleibt, wird ein Branch mit dem Standardwert phrase-translations erstellt.

  9. Optional kann ein benutzerdefinierter Commit title für den Pull Request (bis zu 72 Zeichen) angegeben werden.

    Bleibt das Feld leer, bleibt die Standardnachricht Updated translations from Phrase bestehen. Sobald der benutzerdefinierte Titel festgelegt ist, ersetzt er bei jedem Export die Standard-Commit-Nachricht und den Pull-Request-Titel.

  10. Es sollte auf Validate Configuration geklickt werden, um sicherzustellen, dass Authentifizierungseinstellungen und Konfigurationsdatei korrekt sind.

  11. Optional kann eine Import behavior-Option ausgewählt werden, um festzulegen, wann neue oder aktualisierte Dateien automatisch in das Projekt importiert werden.

  12. Klicke auf Speichern.

    Das Projekt ist nun mit dem ausgewählten GitHub-Repository verbunden und wurde der Liste hinzugefügt.

  13. Optional kann auf das Stiftsymbol geklickt werden, um die Integration umzubenennen.

Die GitHub App von Phrase unterstützt derzeit keine IP-Allowlist. Ist bei einer GitHub-Organisation eine IP-Allowlist aktiviert und die Einstellung „Enable IP allow list configuration for installed GitHub Apps“ eingeschaltet, blockiert GitHub die Phrase GitHub App. Dies führt zu einem leeren Repository-Dropdown-Menü und zu fehlgeschlagenen Exporten. Alternativ können die Egress-IP-Adressen von Phrase der Allowlist der Organisation hinzugefügt werden. Im Artikel Phrase Servers IP Addresses befindet sich die aktuelle Liste der hinzuzufügenden Adressen.

Dateien importieren

Es sollte sichergestellt werden, dass die Push-Befehle in der .phrase.yml-Konfigurationsdatei korrekt konfiguriert sind. Push-Optionen sind dieselben wie für den uploads API-Endpunkt.

Dateien können wie folgt importiert werden:

  • Auf der Seite Repo Syncs kann ein Projekt ausgewählt und anschließend auf Import Sync Import geklickt werden.

    Sprachdateien (definiert als Push-Quelleneinträge in der Konfigurationsdatei) werden in das Projekt importiert.

    Ein Standard-Locale muss vorhanden sein.

    Hinweis

    Falls beim Importieren Probleme auftreten, verwenden Sie den CLI-Client, um die .phrase.yml-Konfigurationsdatei lokal zu testen und auf Fehlermeldungen zu prüfen.

    Kontaktieren Sie bei Bedarf den Phrase Technical Support und hängen Sie die .phrase.yml-Konfigurationsdatei an die Supportanfrage an.

Dateien exportieren

Stellen Sie sicher, dass die Pull-Befehle in der .phrase.yml-Konfigurationsdatei korrekt konfiguriert sind. Pull-Optionen (z. B. include_empty_translations-Parameter) sind dieselben wie für den locales download API-Endpunkt.

Dateien können wie folgt exportiert werden:

  1. Auf der Seite Repo Syncs kann ein Projekt ausgewählt und anschließend auf Export Sync Export geklickt werden.

    Das Export-Fenster wird angezeigt.

  2. Der Ziel-Branch ist im Feld PR-Branch anzugeben.

    Die aktuellsten Dateien im Repository werden als neuer Pull-Request in den gewünschten Branch exportiert.

  3. Sobald die Dateien exportiert wurden, kann der Pull-Request im Repository zusammengeführt oder geschlossen und der Branch gelöscht werden.

Hinweis

Bei Problemen beim Exportieren sollte der CLI-Client verwendet werden, um die .phrase.yml-Konfigurationsdatei lokal zu testen und Fehlermeldungen zu überprüfen.

Bei Bedarf sollte der Phrase Technical Support kontaktiert und die .phrase.yml-Konfigurationsdatei der Supportanfrage beigefügt werden.

Verlauf

Repo Syncs speichern einen Verlauf der letzten Importe und Exporte für jedes Phrase Strings-Projekt.

Um den Verlauf anzuzeigen:

  • Auf der Seite Repo Syncs kann ein Projekt ausgewählt und anschließend auf Verlauf Sync-Verlauf geklickt werden.

    Der Import- und Exportverlauf für das Projekt wird dargestellt. Exporteinträge im Verlauf enthalten einen Link zum entsprechenden Merge Request.

War dieser Beitrag hilfreich?
★ ★ ★ ★ ★

Sorry about that! In what way was it not helpful?

The article didn’t address my problem.
I couldn’t understand the article.
The feature doesn’t do what I need.
Other reason.

Note that feedback is provided anonymously so we aren't able to reply to questions.
If you'd like to ask a question, submit a request to our Support team.
Thank you for your feedback.