Bestimmen Sie, wie viel Sie migrieren müssen
Bestimme deinen Zeitplan, der weitgehend deinen Ansatz bestimmen wird. Als ersten Schritt zum Bestimmen deines Zeitplans machst du eine Bestandsaufnahme der zu migrierenden Elemente.
- Anzahl von Repositorys
- Anzahl der Pull Requests
Hinweis
Der Zeitplan für die Migration hängt weitgehend von der Anzahl der Pull Requests in einem Repository ab. Wenn Sie 1.000 Repositorys migrieren möchten und jedes Repository durchschnittlich über 100 Pullanforderungen verfügt, ist Ihre Migration wahrscheinlich sehr schnell. Wenn Sie nur 100 Repositorys migrieren möchten, aber die Repositorys jeweils über 75.000 Pullanforderungen im Durchschnitt verfügen, dauert die Migration viel länger und erfordert mehr Planung und Tests.
Wir empfehlen den inventory-report Befehl in der ADO2GH extension of the GitHub CLI. Dieser Befehl stellt eine Verbindung mit der Azure DevOps-API her und erstellt dann mehrere CSV-Dateien.
repos.csv enthält Informationen zu Ihren Repositorys, einschließlich der Anzahl der Pullanforderungen.
Um die CSV-Dateien zu erstellen, verwenden Sie den folgenden Befehl, indem Sie YOUR_ADO_ORG durch Ihre Organisation bei Azure DevOps ersetzen.
gh ado2gh inventory-report --ado-org YOUR_ADO_ORG
gh ado2gh inventory-report --ado-org YOUR_ADO_ORG
Nachdem Sie die Repositorys inventarisieren, die Sie migrieren müssen, bewerten Sie Ihre Bestandsdaten im Hinblick auf Ihre gewünschte Zeitachse.
- Wenn deine Organisation eine größere Anzahl von Änderungen verträgt, kannst du möglicherweise auch alle deine Repositorys gleichzeitig migrieren und so deine Migration in wenigen Tagen abschließen.
- Wenn Sie Über Teams verfügen, die nicht gleichzeitig migrieren können, möchten Sie Möglicherweise Ihre Migrationen stapeln und an die Zeitachsen der Teams anpassen und ihren Migrationsaufwand erweitern.
Bestimmen der GitHub Organisationsstruktur
Planen Sie als Nächstes die Organisationsstruktur, die Sie in GitHub erstellen werden. ADO und GitHub haben verschiedene Möglichkeiten, die Arbeit eines Unternehmens zu organisieren.
- ADO: Organisation > Teamprojekt > Repositorys
- GitHub: Enterprise > Organisation > Repositorys
Nach der Migration zu GitHub" sollten Sie nur über ein Unternehmenskonto und eine kleine Anzahl von Organisationen verfügen, die sich im Besitz dieses Unternehmens befinden. Jede Organisation von ADO sollte einer einzigen Organisation auf GitHub entsprechen.
Hinweis
Das Konzept eines Teamprojekts, das zum Gruppieren von Repositorys in ADO verwendet wird, ist in GitHubnicht vorhanden. Es wird nicht empfohlen, für jedes Teamprojekt in ADO eine Organisation auf GitHub zu erstellen, da dies in einer großen Liste nicht gruppierter Repositories innerhalb jeder Organisation resultieren könnte. Du kannst jedoch den Zugriff auf Repositorygruppen verwalten, indem du Teams erstellst.
Wenn Sie Ihren Migrationsaufwand in Batches unterteilen möchten, kann ihnen die neue Struktur helfen, diese zu ermitteln. Wenn du in ADO mehrere Organisationen hast und die Repositorys jeder Organisation Batches mit angemessener Größe ergeben, solltest du die Batchverarbeitung nach Organisation in Betracht ziehen.
- Entscheide, wie deine neue Organisationsstruktur aussehen soll.
- Entscheide, ob du den Migrationsaufwand in kleinere Batches aufteilen musst.
- Bei einer Aufteilung musst du außerdem entscheiden, wie du die Migrationsvorgänge aufteilen möchtest.
Konfigurieren von Repositoryberechtigungen
Da Berechtigungen in GitHub anders funktionieren als in ADO, versucht GitHub Enterprise Importer nicht, Repository-Berechtigungen von ADO zu migrieren.
Wenn Sie ADO2GH CLI verwenden, werden in GitHub zwei Teams für jedes Teamprojekt in ADO erstellt. Jedem Team wird eine andere Zugriffsebene auf alle Repositorys gewährt, die aus dem Teamprojekt stammen.
| Mannschaft | Zugriff auf migrierte Repositorys |
|---|---|
| TEAM-PROJECT-Wartungsteam | Maintainer (Teambetreuer) |
| TEAM-PROJECT-Administratoren | Administrator |
Um Zugriff auf migrierte Repositorys zu gewähren, kannst du diesen Teams Personen hinzufügen. Sie können dies manuell auf GitHub oder wenn Sie die Teams während der Migration mit Azure Active Directory (AAD)-Gruppen verknüpfen möchten, indem Sie die Gruppenmitgliedschaft in AAD verwalten. Weitere Informationen zur manuellen Verwaltung der Teammitgliedschaft findest du unter Organisationsmitglieder zu einem Team hinzufügen.