Zum Inhalt springen

Azure-Repos-Integration

Die Azure-Repos-Integration ermöglicht es dir, Dateien zwischen deinem Azure-Repos-Repository und deinem Crowdin-Projekt zu synchronisieren.

In dateibasierten Projekten kannst du zwischen zwei Azure-Repos-Integrationsmodi wählen:

  • Modus für Quell- und Übersetzungsdateien – Synchronisiere Quell- und Übersetzungsdateien zwischen deinem Azure-Repos-Repository und deinem Crowdin-Projekt.
  • Modus für Ziel-Dateibundles – Generiere Übersetzungsdateien im ausgewählten Format aus dem Crowdin-Projekt und übertrage sie in dein Azure-Repos-Repository. In diesem Modus überträgt die Integration Übersetzungsdateien und synchronisiert keine Quellen aus deinem Repository. In this mode, integration pushes translation files and doesn’t sync sources from your repo.

In stringbasierten Projekten arbeitet die Azure-Repos-Integration ausschließlich im Modus für Ziel-Dateibundles.

Mehr über Projekttypen erfahren.

Alle übersetzten und freigegebenen Dateien (oder Ziel-Dateibundles) werden automatisch in den l10n-Branch des Azure-Repos-Repositorys zusammengeführt.

  1. Öffne dein Projekt und gehe zum Tab Integrationen.
  2. Klicke in der Liste der Integrationen auf Azure Repos.
  3. Klicke auf Integration einrichten und wähle in der Dropdown-Liste Modus für Quell- und Übersetzungsdateien oder Modus für Ziel-Dateibundles, um die Integration über dein Azure-Repos-Konto herzustellen. Azure Repos verbinden
  4. Dann autorisiere die Verbindung mit Crowdin auf der Azure-Repos-Seite: Autorisierung der Azure-Repos-Integration

Falls das benötigte Repository privat ist und du nur eingeschränkten oder keinen Zugriff darauf hast, bitte den Repositorybesitzer, dir ein Zugriffstoken bereitzustellen. Klicke anschließend auf Persönliches Zugriffstoken verwenden, füge das Token in das Feld Token ein und klicke auf Integration einrichten.

Wähle im angezeigten Dialogfeld dein Repository und die zu übersetzenden Branches aus.

Azure-Repos-Integration nicht konfiguriert

Es wird empfohlen, „Doppelte Strings“ auf In einem Versions-Branch anzeigen umzuschalten, damit identische Strings zwischen Branches ausgeblendet werden. Wenn deine Quelldateien Strings mit offensichtlichen Bezeichnern (Schlüsseln) enthalten, ist es besser, eine strikte Variante dieser Option zu verwenden. In anderen Fällen kannst du gerne die reguläre Variante verwenden.

Bei der Arbeit mit der Azure-Repos-Integration im Modus für Ziel-Dateibundles sendet die Integration die fertigen Übersetzungen aus deinem Crowdin-Projekt, ohne Quellen aus deinem Repository abzurufen. Wenn du also ein Repository und Branches auswählst, die übersetzt werden sollen, legst du fest, wohin die Integration die generierten Bundles mit den Übersetzungen ablegen soll.

Wenn Sie mit privaten Integrationen arbeiten (z. B. Integrationen mit selbst gehostetem VCS), müssen Sie dedizierte Crowdin-IP-Adressen in die Erlaubnisliste aufnehmen, um sicherzustellen, dass die Integration ordnungsgemäß funktioniert und sicher bleibt.

Mehr über IP-Adressen erfahren.

Wenn die Übersetzungen fertig sind und deine Sprachen bereit zur Veröffentlichung sind, sendet Crowdin den Pull Request mit den Übersetzungen an dein Versionskontrollsystem. Für jeden zu lokalisierenden Branch erstellt Crowdin einen zusätzlichen Service-Branch mit den Übersetzungen. Wir committen nicht direkt in den Master-Branch, damit du die Übersetzungen zuerst überprüfen kannst.

Standardmäßig wird l10n_ dem Namen des erstellten Service-Branchs vorangestellt. Falls erforderlich, kannst du dies problemlos ändern.

Konfiguriere die Synchronisierungseinstellungen entsprechend deinen Anforderungen und Präferenzen.

Um vorhandene Übersetzungen aus deinem Repository zu importieren, wähle eine der folgenden Optionen:

  • Einmaliger Übersetzungsimport nach dem Verbinden des Branchs
  • Neue Übersetzungen aus dem Repository immer importieren

Standardmäßig ist die erste Option ausgewählt, sodass Übersetzungen nur einmal importiert werden. Alternativ kannst du beide Optionen deaktivieren, wenn du keine Übersetzungen aus deinem Repository importieren möchtest.

Klicke auf Optionen für das Hochladen von Übersetzungen, um auf die folgenden zusätzlichen Optionen zuzugreifen:

  • Zielübersetzung darf mit der Quelle übereinstimmen
  • Hinzugefügte Übersetzungen freigeben

Standardmäßig werden Quellen nicht zusammen mit den Übersetzungen in das Repository übertragen. Wenn du jedoch eine Überprüfung des Quelltexts in deinem Crowdin-Projekt durchführst und die in Crowdin vorgenommenen Änderungen an deinen Quelldateien zurück in dein Repository übertragen möchtest, klicke auf Bearbeiten, wähle in den Integrationseinstellungen Quellen übertragen aus und klicke auf Speichern.

Die Synchronisierung wird automatisch jede Stunde durchgeführt. Falls erforderlich, kannst du das Aktualisierungsintervall in den Integrationseinstellungen ändern. Um den Synchronisierungszeitplan zu konfigurieren, klicke auf Bearbeiten, scrolle nach unten zu Synchronisierungszeitplan, lege das gewünschte Intervall fest und klicke auf Speichern.

Es gibt Fälle, in denen Übersetzungen vorübergehend nicht in das Repository übertragen werden sollen. Klicke in diesem Fall auf Bearbeiten, deaktiviere Synchronisierungszeitplan in den Integrationseinstellungen und klicke auf Speichern. Wenn du die Übersetzungen wieder mit dem Repository synchronisieren möchtest, wähle Synchronisierungszeitplan aus und klicke auf Speichern.

Unabhängig von den Synchronisierungseinstellungen werden Änderungen an den Quelldateien im Repository weiterhin kontinuierlich mit Crowdin synchronisiert.

Beim Einrichten der Integration wählst du vorhandene Repository-Branches aus, die dem Crowdin-Projekt hinzugefügt werden sollen. Um zukünftige Branches aus Azure Repos automatisch zu Crowdin hinzuzufügen, erstelle in den Integrationseinstellungen ein Muster für die Branch-Namen.

Beispielsweise fügst du in den Einstellungen der Azure-Repos-Integration das Muster *feature hinzu. In diesem Fall werden zukünftige Branches, die dieses Wort am Ende ihres Titels enthalten, dem Projekt hinzugefügt.

Führe die folgenden Schritte aus, um ein Muster für Branch-Namen hinzuzufügen:

  1. Klicke im Abschnitt der Azure-Repos-Integration auf Bearbeiten.
  2. Scrolle im angezeigten Dialogfeld nach unten zu Automatisch zu synchronisierende Branches.
  3. Verwende im Feld Automatisch zu synchronisierende Branches Platzhalter wie *, ?, [set], \ und weitere, um die benötigten Branches zu bestimmen.
  4. Click Save.

crowdin.yml ist der Standarddateiname, der für automatisch synchronisierte Branches verwendet wird. Um die Standardeinstellungen zu ändern, klicke auf Bearbeiten, gib im Feld Standardname der Konfigurationsdatei in den Integrationseinstellungen den gewünschten Namen ein und klicke auf Speichern.

Wenn du keinen eigenen Namen für die Konfigurationsdatei automatisch synchronisierter Branches angibst und die Integration im Stammverzeichnis des Branchs keine Konfigurationsdatei mit dem Standardnamen crowdin.yml findet, werden diese Branches in den Integrationseinstellungen mit einem roten Symbol mit Ausrufezeichen und dem Hinweis „Nicht bereit. Konfiguration prüfen“ markiert. Konfiguration prüfen

Damit die Integration funktioniert, musst du angeben, welche Quelldateien übersetzt werden sollen und wie Crowdin die übersetzten Dateien in deinem Repository strukturieren soll.

Es gibt zwei Möglichkeiten, den zu synchronisierenden Inhalt festzulegen:

  • Online konfigurieren
  • Manuell durch Erstellen einer Konfigurationsdatei konfigurieren

Dieses Verfahren ist für alle Integrationen mit Versionskontrollsystemen (VCS) gleich.

Unter VCS-Integrationen online konfigurieren erfährst du, wie du den zu synchronisierenden Inhalt online auswählst.

Die Konfigurationsdatei crowdin.yml sollte zusammen mit jedem separaten Branch, den du übersetzen möchtest, im Azure-Repos-Repository gespeichert werden, damit Crowdin genau weiß, welche Dateien zur Übersetzung gesendet werden sollen.

Sie sollte dieselbe Struktur haben, die für die CLI erforderlich ist. Aus Sicherheitsgründen dürfen die Anmeldedaten deines Projekts jedoch nicht im Header der Datei gespeichert werden.

Mehr über das Erstellen einer Konfigurationsdatei erfahren.

Wenn du an einem plattformübergreifenden Produkt arbeitest, das Versionen für verschiedene Betriebssysteme enthält, möchtest du möglicherweise mehrere Repositorys verbinden, die Quelldateien für die einzelnen Betriebssysteme enthalten. In diesem Fall können Lokalisierungsressourcen (z. B. TMs und Glossare) und Übersetzungen effizienter genutzt werden, wodurch sich die für die Projektlokalisierung benötigte Zeit verkürzt.

Führe die folgenden Schritte aus, um ein weiteres Repository hinzuzufügen:

  1. Öffne dein Projekt und gehe zum Tab Integrationen.
  2. Klicke in der Liste der Integrationen auf Azure Repos.
  3. Klicke auf Repository hinzufügen.
  4. Konfiguriere die Integration mit dem neuen Repository entsprechend deinen Anforderungen und Präferenzen.

Sobald die Integration eingerichtet ist, werden alle zugehörigen Informationen unter Integrationen > Azure Repos gespeichert.

Nach dem Verbinden der Integration können die Einstellungen nur noch von dem Projektmitglied aktualisiert werden, das sie konfiguriert hat. Alle Projektmanager außer der Person, die die Integration konfiguriert hat, sehen die Schaltfläche Bearbeiten deaktiviert. Beim Darüberfahren wird folgende Meldung angezeigt: Integration was configured by {Full Name} ({username}).

Standardmäßig wird die Synchronisierung automatisch jede Stunde durchgeführt. Wenn du die Synchronisierung sofort starten möchtest, klicke auf Jetzt synchronisieren.

Synchronisierung der Integration jetzt

Alternativ kannst du, wenn du nur einen einzelnen Branch separat synchronisieren möchtest, auf beim gewünschten Branch klicken und Branch synchronisieren auswählen.

Standardmäßig werden die im Repository gespeicherten Übersetzungen nur während der ersten Synchronisierung zu Crowdin hochgeladen. Um Übersetzungen manuell zu Crowdin hochzuladen, klicke auf den Dropdown-Pfeil der Schaltfläche Jetzt synchronisieren und dann auf Übersetzungen mit Crowdin synchronisieren. Die Integration lädt vorhandene Übersetzungen in dein Crowdin-Projekt hoch.

Übersetzungen der Integration hochladen
Wie kann ich unnötige Anwendungs-Builds vermeiden, die durch Commits von Crowdin ausgelöst werden?

Da VCS-Integrationen in Crowdin die API zum Committen von Dateien und nicht Git verwenden, wird jede Datei separat committed.

Hier sind einige Empfehlungen, die dir bei der Lösung ähnlicher Situationen helfen können:

  • Verwende die Option export_languages, um Commits von Sprachen zu überspringen, die du noch nicht benötigst. Mehr über den Parameter „Export languages“ erfahren.
  • Standardmäßig wird der Tag [ci skip] zur Commit-Nachricht hinzugefügt, um unnötige Builds zu überspringen. Mehr über den Parameter „Commit Message“ erfahren.
  • Konfiguriere das gewünschte Synchronisierungsintervall mithilfe von Synchronisierungszeitplan (z. B. Synchronisierung einmal alle 24 Stunden).
  • Führe Commits beim Zusammenführen eines Lokalisierungs-Branchs zusammen, damit die Historie des Master-Branchs übersichtlich und sauber bleibt.
War diese Seite hilfreich?