Integrationen

GitHub (Strings)

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

Tipp

Informationen zur GitHub Integration in Phrase TMS finden Sie unter GitHub (TMS).

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 Token zum zugreifen 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 Branch 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 User-Konto installiert sein, dem das Repository gehört.

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

    • Berechtigungen zum Installieren oder Autorisieren von GitHub Apps sind in der Zielsprache Organisation oder dem User-Konto erforderlich.

    • Unterstützt das Verbinden eines Strings User-Konto mit mehreren GitHub Organisationen. Wählen Sie aus, welche GitHub Organisation in der Integration Konfiguration synchronisiert wird. Es gibt kein hartes Limit für die Anzahl der Organisationen, die verbunden werden können.

  • GitHub access token:

    • Klassische Token

      Erfordert den repo-Bereich (public_repo bei 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, führen Sie diese Schritte aus, um ein Repository zu verbinden:

  1. Klicken Sie in der Hauptnavigation auf Automations und dann auf Repo Syncs.

    Alternativ scrollen Sie auf der Seite Integrations nach unten zu Repo Sync und klicken Sie auf Konfigurieren.

    Die Seite Repo Syncs wird geöffnet. Die Liste Repo Syncs zeigt nur Projekte an, auf die der betrachtende User zugreifen kann.

  2. Klicken Sie auf Add Sync/GitHub.

    Das Einstellungsfenster GitHub sync wird geöffnet.

  3. Wählen Sie ein Projekt aus der Dropdown-Liste aus.

  4. Wählen Sie die Authentifizierungsmethode aus:

    • GitHub App (empfohlen)

      Wenn die GitHub App noch nicht installiert ist, klicken Sie auf Authentifizierung. Die Authentifizierung wird einmalig durchgeführt und kann für mehrere Repository-Synchronisierungen wiederverwendet werden.

      Wenn die GitHub App bereits installiert ist, klicken Sie auf Installation verwalten, um die App-Installation für die Ziel-Organisation oder das User-Konto abzuschließen. Der Repository-Zugriff wird auf Organisation- oder User-Konto-Ebene verwaltet und ist nicht an einen einzelnen GitHub User gebunden.

    • Persönliches Zugriffstoken

      Geben Sie ein persönliches Repository-Zugriff-Token mit API-Bereich an.

      Bei Verwendung eines persönlichen Zugriff-Tokens hängt der Repository-Zugriff vom GitHub User ab, der das Token erstellt hat.

    • Selbstgehostete Instanz

      Geben Sie den selbst gehosteten GitHub API-Endpunkt und ein persönliches Repository-Zugriff-Token mit API-Bereich an.

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

  5. Wenn die GitHub App verwendet wird, wählen Sie die Connected GitHub organization aus der Dropdown-Liste aus. Die Repository-Liste wird basierend auf dieser Auswahl geladen.

  6. Wählen Sie ein GitHub repository aus der Dropdown-Liste aus.

  7. Wählen Sie einen Repository branch aus der Dropdown-Liste aus, um von dort zu importieren (push) und zu exportieren (pull). Dies ist normalerweise der Master-Branch.

  8. Geben Sie optional einen Branch-Namen für den Pull Request an. Wenn dieser leer gelassen wird, wird ein Branch mit dem Standardwert phrase-translations erstellt.

  9. Klicken Sie auf Validate Configuration, um sicherzustellen, dass die Authentifizierung Einstellungen und die Konfigurationsdatei korrekt sind.

  10. Wählen Sie optional eine Import behavior Option, um festzulegen, wann neue oder aktualisierte Dateien automatisch in das Projekt importiert werden.

  11. Klicke auf Speichern.

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

  12. (Optional) Klicken Sie auf das pencil icon, um die Integration umzubenennen.

Dateien importieren

Stellen Sie sicher, dass die Push-Befehle in der .phrase.yml configuration Datei korrekt konfiguriert sind. Die Push-Optionen sind dieselben wie für den uploads API-Endpunkt.

Dateien importieren:

  • Wählen Sie auf der Seite Repo Syncs ein Projekt aus und klicken Sie auf Import Sync Import.

    Sprachdateien (die in der Konfigurationsdatei als Push-Ausgangssprache definiert sind) werden in das Projekt importiert.

    Eine Standardsprache muss vorhanden sein.

    Hinweis

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

    Falls erforderlich, contact Phrase Technical Support und hängen Sie die .phrase.yml Konfigurationsdatei an die Support-Anfrage an.

Dateien exportieren

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

So exportieren Sie Dateien:

  1. Wählen Sie auf der Seite Repo Syncs ein Projekt aus und klicken Sie auf Exportieren Sync Export.

    Das Exportieren-Fenster wird angezeigt.

  2. Geben Sie den Branch der Zielsprache im Feld PR-Branch an.

    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

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

Falls erforderlich, contact Phrase Technical Support und hängen Sie die .phrase.yml Konfigurationsdatei an die Support-Anfrage an.

Verlauf

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

So zeigen Sie den Verlauf an:

  • Wählen Sie auf der Seite Repo Syncs ein Projekt aus und klicken Sie auf Verlauf Sync History.

    Der Import- und Exportverlauf für das Projekt wird angezeigt. Export-Einträ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.