Übersetzungsmanagement

Branching (Strings)

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

Verfügbar für

  • Business- und Enterprise-Pläne

Kontaktiere Vertrieb für Fragen zur Lizenzierung.

Branching wird in der Software-Versionskontrolle verwendet. Kopien von Projekt-Dateien, sogenannte Branches, ermöglichen es Teams, gleichzeitig an parallelen Versionen des Projekt zu arbeiten, während eine unveränderte Kopie erhalten bleibt. Dies eliminiert das Risiko, versehentlich die Änderungen anderer an Projekt-Dateien zu überschreiben.

Das Haupt-Projekt wird kopiert, wenn ein neuer Branch erstellt wird, wobei Änderungen nur an diesem Branch vorgenommen werden. Wenn Änderungen Abschließen sind, wird der Branch zurück in das Haupt-Projekt gemergt. An mehreren Branches kann gleichzeitig gearbeitet werden und nach dem Mergen werden Branches automatisch gelöscht. Gemergte Branches bleiben im Merged-Tab für eine vereinfachte Historienverfolgung verfügbar. Tags von einem bestehenden Branch werden in den neuen Branch kopiert.

Einschränkungen

  • Alle Rollen außer Übersetzer und Gast können auf die Branches-Ansicht zugreifen.

  • Merges können nicht rückgängig gemacht werden und Branches können nicht wiederhergestellt werden.

  • Jobs, die in einem bestimmten Branch erstellt wurden, sind im Haupt-Projekt nicht sichtbar und umgekehrt. Wenn ein Branch in das Haupt-Projekt gemergt wird, gehen alle offenen Jobs darin verloren.

  • Berichte in der Reports-Ansicht spiegeln nur den Status des aktiven Branch wider. Das Mergen eines Branch in das Haupt-Projekt aktualisiert die Berichte des Haupt-Projekts.

  • Die Activity-Ansicht enthält nur Aktivitäten im aktiven Branch. Aktivitäten in Branches sind im Haupt-Projekt nicht sichtbar und umgekehrt. Aktivitäten in einem Branch gehen verloren, wenn dieser in das Haupt-Projekt gemergt wird.

  • GitHub Sync kann nur im Haupt-Projekt und nicht in Branches verwendet werden.

  • Kommentare, die in einem Branch gemacht wurden, sind im Haupt-Projekt nicht sichtbar und umgekehrt.

  • Aufträge, die in einem Branch erstellt wurden, sind im Haupt-Projekt nicht sichtbar und umgekehrt. Wenn ein Branch in das Haupt-Projekt zusammengeführt wird, gehen alle darin offenen Aufträge verloren.

  • Übersetzer können nicht auf bestimmte Branches beschränkt werden, erhalten aber die Berechtigung, an bestimmten Gebietsschemata zu arbeiten. Übersetzer sollten darin geschult werden, wie sie mit Branches arbeiten.

Branching aktivieren

Branching wird im Erweitert Tab der Projekt Einstellungen aktiviert, mit der Option, den Haupt-Branch vor Änderungen zu schützen.

Wenn aktiviert, wird ein Branch-Menü Branch Menu auf dem Projekt-Bildschirm angezeigt, in dem Arbeits-Branches ausgewählt werden können. Um einen Branch in CLI anzugeben, verwenden Sie den Parameter --branch:

--branch <branch_name>

Branches werden im Branches Tab eines Projekts aufgelistet, wo Informationen zu Erstellung und Zusammenführung angezeigt werden. Branches können auch gelöscht oder zusammengeführt werden und Jobs für diesen Branch können über den Branches Tab erstellt werden.

Um alle Branches für ein Projekt über API oder CLI aufzulisten, führen Sie aus:

$ phrase branches list --project_id <project_id>

# z. B.
$ phrase branches list --project_id 1d8ae641902624df63ce6fbd64ff9549$ phrase branches list <project_id>

Um einen Branch über API oder CLI zu löschen, führen Sie aus:

$ phrase branches delete --project_id <project_id> --name <branch_name>

# z. B.
$ phrase branches delete --project_id 1d8ae641902624df63ce6fbd64ff9549 --name test-test$ phrase branch löschen <project_id> <branch_name>

Branch erstellen

Admin, Projektmanagement, Designer und Entwickler können neue Branch im Branches Tab, via API oder in der CLI erstellen. Branch können von jedem anderen Branch aus erstellt werden, nicht nur vom Haupt-Branch. Es werden bis zu 5 Branch-Ebenen unterstützt.

Um einen Branch über die UI zu erstellen, folgen Sie diesen Schritten:

  1. Wählen Sie auf einer Projekt Seite den Branches Tab aus.

  2. Klicken Sie auf Erstellen branch.

    Das Erstellen branch Fenster öffnet sich.

  3. Geben Sie einen Namen für den Branch an.

  4. Wählen Sie einen Base branch aus der Liste der vorhandenen Branch aus.

  5. Klicke auf Erstellen.

    Der neue Branch wird der Liste hinzugefügt.

Um einen Branch via API oder CPI zu erstellen, führen Sie Folgendes aus:

$ phrase branches Erstellen --project_id <project_id> --data <data>

Um einen Branch beim Pushen von Übersetzungen zu erstellen, führen Sie Folgendes aus:

$ phrase push --branch <branch_name>

Branches synchronisieren

Die Synchronisierung stellt sicher, dass der Arbeits-Branch mit den neuesten Änderungen des Branch, von dem er stammt, abgeglichen bleibt. Auf diese Weise können Übersetzer auch bei langfristigen Projekten mit einer aktualisierten Version des Content arbeiten.

Um einen Branch mit seinem Basis-Branch zu synchronisieren, folgen Sie diesen Schritten:

  1. Klicken Sie im Branches Tab neben dem gewünschten Branch auf Sync with base branch Weiter.

    Die Sync-Seite wird mit Informationen zu allen Konflikten und Änderungen angezeigt, die mit dem Basis-Branch synchronisiert werden sollen.

  2. Klicken Sie auf eine der erkannten Änderungen, um sie vor der Synchronisierung zu überprüfen.

    Eine Tabelle mit Details zur ausgewählten Änderung wird angezeigt.

  3. Wählen Sie Sync aus und bestätigen Sie, um die Änderungen anzuwenden.

    Die Änderungen werden dem Basis-Branch hinzugefügt und im Translation Editor sichtbar. Informationen zur letzten Synchronisierung werden in der Spalte Synced des Branches-Tabs angezeigt.

Die Branch-Synchronisierung kann auch über die API durch Ausführen dieses CLI-Befehls durchgeführt werden:

$ phrase branches sync \
  --project_id <project_id> \
  --name <branch_name> \
  --data '{"strategy":"use_main"}' \
  --access_token <token>
  • use_branch löst Konflikte durch Übernahme der Änderungen aus dem Branch und ist die Standardeinstellung, falls nicht anders angegeben.

  • use_main löst Konflikte durch Ablehnung der Änderungen aus dem Branch und bezieht sich auf den Basis-Branch. Bei der Arbeit mit gestapelten Branches ist der Basis-Branch nicht zwangsläufig der eigentliche Haupt-Projekt-Branch.

Branches zusammenführen

Nach Abschluss der Übersetzung oder versionsspezifischer Jobs in einem Branch können alle Änderungen in den Basis-Branch zusammengeführt werden. Sobald alle Änderungen in der Kette nach oben zusammengeführt wurden, kann der Branch der obersten Ebene in den Haupt-Branch zusammengeführt werden.

Nach einem erfolgreichen Zusammenführen wird der zusammengeführte Branch automatisch gelöscht und erscheint im Merged-Tab zur Nachverfolgung der Historie.

Während des Zusammenführens werden nur Änderungen an den folgenden Ressourcen auf den Basis-Branch angewendet:

  • Gebietsschemas

  • Keys

  • Übersetzungen

Änderungen an anderen Ressourcen, wie Aktivitäten, Jobs und Aufträgen, werden nicht angewendet.

Branchs mit aktiv untergeordnetes Element Branchs können erst zusammengeführt werden, wenn die untergeordnetes Element Branchs zuerst gelöscht oder zusammengeführt wurden.

Konflikte

Ein Konflikt tritt auf, wenn eine Ressource (Übersetzung, Key oder Sprache) sowohl im aktuellen Branch als auch in dessen Basis-Branch geändert wurde, nachdem der Branch erstellt oder zuletzt synchronisiert wurde. Konflikte können auf jeder Ebene des Branch-Stacks auftreten, nicht nur beim zusammenführen in main.

Um einen Branch zusammenzuführen, folgen Sie diesen Schritten:

  1. Klicken Sie im Tab Branches eines Projekt auf Merge with base branch neben dem gewünschten Branch.

    Die Seite Merge öffnet sich. Informationen zu Übersetzungen, die während des zusammenführen geändert werden sollen, können durch Klicken in die Zellen aufgerufen werden.

  2. Wenn Konflikte bestehen, wählen Sie eine Strategie zum zusammenführen:

    • Wählen Sie Use Base Branch, um die konfliktverursachenden Änderungen zurückzuweisen und bestehende Übersetzungen beizubehalten.

    • Wählen Sie Use Branch Menu BranchName, um bestehende Übersetzungen durch Änderungen aus dem Branch zu Ersetzen.

  3. Klicken Sie auf Merge und bestätigen Sie, um die Änderungen anzuwenden.

    Der Branch wird mit dem Basis-Branch zusammengeführt und automatisch gelöscht. Um den Verlauf der zusammengeführten Branchs zu überprüfen, öffnen Sie den Tab Merged auf der Seite Branches.

Um einen Branch über API oder CPI zusammenzuführen, führen Sie Folgendes aus:

$ phrase branches merge \\
  --project_id <project_id> \
  --name <name> \\
  --data '{"strategy":"use_main"}' \
  --access_token <token>
  • use_branch löst Konflikte durch Übernahme der Änderungen aus dem Branch und ist die Standardeinstellung, falls nicht anders angegeben.

  • use_main löst Konflikte durch zurückweisen der Änderungen aus dem Branch. use_master wird ebenfalls unterstützt.

Die Aktion merge löscht den zusammengeführten Branch ebenfalls automatisch.

Push & Pull

Wenn Sie die CLI verwenden, geben Sie mit dem Parameter --branch einen Branch an, von dem aus oder zu dem Sie pushen oder pullen möchten.

$ phrase push --branch <branch_name>
$ Phrase pull --branch <branch_name>

Wenn der angegebene Branch in einem Projekt nicht existiert, erstellt der Kunde ihn.

Verwenden Sie --use-local-branch-name, um unter Verwendung des Branch-Namens eines aktiven Git-Branch zu pushen und zu pullen:

$ Phrase push --use-local-branch-name
$ Phrase pull --use-local-branch-name

API

Alle API-Endpunkte, die ein Projekt-Argument akzeptieren, unterstützen auch den Parameter --branch, um eine Aktion auf einem bestimmten Branch eines Projekt auszuführen:

$ Phrase upload Erstellen <project_id> \

  --branch <branch_name>

  --file /path/to/my/file.json \

  --file-format json \

  --locale-id abcd1234cdef1234abcd1234cdef1234 \

  --tags awesome-feature,needs-proofreading \

  --locale-mapping "{"en": "2"}" \

  --format-options "{"foo": "bar"}" 
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.