Kontrola źródła w usłudze Synapse Studio

Domyślnie autorzy programu Synapse Studio bezpośrednio przeciwko usłudze Synapse. Jeśli potrzebujesz współpracy przy użyciu narzędzia Git do kontroli źródła, program Synapse Studio umożliwia skojarzenie obszaru roboczego z repozytorium Git, usługą Azure DevOps lub usługą GitHub.

W tym artykule opisano sposób konfigurowania i pracy w obszarze roboczym usługi Synapse z włączonym repozytorium git. Ponadto wyróżniamy niektóre najlepsze rozwiązania i przewodnik rozwiązywania problemów.

Uwaga

Aby korzystać z usługi GitHub w usługach Azure Gov i Microsoft Azure obsługiwanych przez firmę 21Vianet, możesz użyć własnej aplikacji OAuth usługi GitHub w programie Synapse Studio na potrzeby integracji z usługą Git. Środowisko konfiguracji jest takie samo w przypadku usługi ADF. Możesz zapoznać się z blogem z ogłoszeniem.

Wymagania wstępne

Użytkownicy muszą mieć rolę Współautor platformy Azure (RBAC) lub nowszą w obszarze roboczym usługi Synapse, aby skonfigurować, edytować ustawienia i rozłączyć repozytorium Git za pomocą usługi Synapse.

Konfigurowanie repozytorium Git w programie Synapse Studio

Po uruchomieniu programu Synapse Studio możesz skonfigurować repozytorium git w obszarze roboczym. Obszar roboczy programu Synapse Studio można skojarzyć tylko z jednym repozytorium Git jednocześnie.

Metoda konfiguracji 1: pasek globalny

Na pasku globalnym programu Synapse Studio wybierz menu rozwijane Synapse Live , a następnie wybierz pozycję Skonfiguruj repozytorium kodu.

Configure the code repository settings from authoring

Metoda konfiguracji 2: Zarządzanie koncentratorem

Przejdź do centrum Zarządzanie programem Synapse Studio. Wybierz pozycję Konfiguracja usługi Git w sekcji Kontrola źródła. Jeśli nie masz połączonego repozytorium, kliknij przycisk Konfiguruj.

Configure the code repository settings from management hub

W obszarze roboczym możesz połączyć repozytorium git usługi Azure DevOps lub GitHub.

Połączenie za pomocą usługi Azure DevOps Git

Obszar roboczy usługi Synapse można skojarzyć z repozytorium Usługi Azure DevOps na potrzeby kontroli źródła, współpracy, przechowywania wersji itd. Jeśli nie masz repozytorium usługi Azure DevOps, postępuj zgodnie z tymi instrukcjami , aby utworzyć zasoby repozytorium.

Ustawienia repozytorium Git usługi Azure DevOps

Podczas nawiązywania połączenia z repozytorium Git najpierw wybierz typ repozytorium jako git usługi Azure DevOps, a następnie wybierz jedną dzierżawę usługi Microsoft Entra z listy rozwijanej, a następnie kliknij przycisk Kontynuuj.

Configure the code repository settings

W okienku konfiguracji są wyświetlane następujące ustawienia usługi Git usługi Azure DevOps:

Ustawienie opis Wartość
Typ repozytorium Typ repozytorium kodu usługi Azure Repos.
Usługa Azure DevOps Git lub GitHub
Logowanie między dzierżawami Pole wyboru logowania się przy użyciu konta między dzierżawami. niezaznaczone (ustawienie domyślne)
Microsoft Entra ID Nazwa dzierżawy firmy Microsoft Entra. <your tenant name>
Konto usługi Azure DevOps Nazwa organizacji usługi Azure Repos. Nazwę organizacji usługi Azure Repos można znaleźć pod adresem https://{organization name}.visualstudio.com. Możesz zalogować się do organizacji usługi Azure Repos, aby uzyskać dostęp do profilu programu Visual Studio i wyświetlić repozytoria i projekty. <your organization name>
ProjectName Nazwa projektu usługi Azure Repos. Nazwę projektu usługi Azure Repos można znaleźć pod adresem https://{organization name}.visualstudio.com/{project name}. <your Azure Repos project name>
Nazwa repozytorium Nazwa repozytorium kodu usługi Azure Repos. Projekty usługi Azure Repos zawierają repozytoria Git do zarządzania kodem źródłowym w miarę rozwoju projektu. Możesz utworzyć nowe repozytorium lub użyć istniejącego repozytorium, które znajduje się już w projekcie. <your Azure Repos code repository name>
Gałąź współpracy Gałąź współpracy usługi Azure Repos używana do publikowania. Domyślnie jest to .master Zmień to ustawienie w przypadku, gdy chcesz opublikować zasoby z innej gałęzi. Możesz wybrać istniejące gałęzie lub utworzyć nowe <your collaboration branch name>
Folder główny Folder główny w gałęzi współpracy usługi Azure Repos. <your root folder name>
Importowanie istniejących zasobów do repozytorium Określa, czy mają być importowane istniejące zasoby z programu Synapse Studio do repozytorium Git usługi Azure Repos. Zaznacz pole, aby zaimportować zasoby obszaru roboczego (z wyjątkiem pul) do skojarzonego repozytorium Git w formacie JSON. Ta akcja eksportuje każdy zasób indywidualnie. Jeśli to pole nie jest zaznaczone, istniejące zasoby nie są importowane. Zaznaczone (ustawienie domyślne)
Zaimportuj zasób do tej gałęzi Wybierz, do której gałęzi są importowane zasoby (skrypt SQL, notes, definicja zadania platformy Spark, zestaw danych, przepływ danych itp.).

Możesz również użyć linku repozytorium, aby szybko wskazać repozytorium git, z którym chcesz nawiązać połączenie.

Uwaga

Usługa Azure Synapse nie obsługuje połączenia z repozytorium Prem Azure DevOps.

Korzystanie z innej dzierżawy firmy Microsoft Entra

Repozytorium Git usługi Azure Repos może znajdować się w innej dzierżawie firmy Microsoft Entra. Aby określić inną dzierżawę firmy Microsoft Entra, musisz mieć uprawnienia administratora dla używanej subskrypcji platformy Azure. Aby uzyskać więcej informacji, zobacz Zmienianie administratora subskrypcji

Ważne

Aby nawiązać połączenie z innym identyfikatorem Entra firmy Microsoft, zalogowany użytkownik musi być częścią tej usługi Active Directory.

Korzystanie z osobistego konta Microsoft

Aby korzystać z osobistego konta Microsoft na potrzeby integracji z usługą Git, możesz połączyć osobiste repozytorium platformy Azure z usługą Active Directory w organizacji.

  1. Dodaj osobiste konto Microsoft do usługi Active Directory organizacji jako gościa. Aby uzyskać więcej informacji, zobacz Dodawanie użytkowników współpracy firmy Microsoft Entra B2B w witrynie Azure Portal.

  2. Zaloguj się do witryny Azure Portal przy użyciu osobistego konta Microsoft. Następnie przejdź do usługi Active Directory organizacji.

  3. Przejdź do sekcji Azure DevOps, w której jest teraz widoczne osobiste repozytorium. Wybierz repozytorium i połącz się z usługą Active Directory.

Po wykonaniu tych kroków konfiguracji repozytorium osobiste jest dostępne podczas konfigurowania integracji z usługą Git w programie Synapse Studio.

Aby uzyskać więcej informacji na temat łączenia usługi Azure Repos z usługą Active Directory organizacji, zobacz Połączenie twojej organizacji z identyfikatorem Microsoft Entra ID.

Używanie konta usługi Azure DevOps między dzierżawami

Jeśli usługa Azure DevOps nie znajduje się w tej samej dzierżawie co obszar roboczy usługi Synapse, możesz skonfigurować obszar roboczy przy użyciu konta usługi Azure DevOps między dzierżawami.

  1. Wybierz opcję Logowanie między dzierżawami i kliknij przycisk Kontynuuj

    Select the cross tenant sign in

  2. Wybierz przycisk OK w oknie dialogowym.

    Confirm the cross tenant sign in

  3. kliknij pozycję Użyj innego konta i zaloguj się przy użyciu konta usługi Azure DevOps.

    Use another account

  4. Po zalogowaniu wybierz katalog i repozytorium i skonfiguruj go odpowiednio.

    Choose the directory

    Uwaga

    Aby zalogować się do obszaru roboczego, musisz zalogować się do konta użytkownika obszaru roboczego usługi Synapse przy użyciu pierwszego logowania. Konto usługi Azure DevOps między dzierżawami jest używane tylko do logowania się i uzyskiwania dostępu do repozytorium usługi Azure DevOps skojarzonego z tym obszarem roboczym usługi Synapse.

Połączenie za pomocą usługi GitHub

Obszar roboczy można skojarzyć z repozytorium GitHub na potrzeby kontroli źródła, współpracy i przechowywania wersji. Jeśli nie masz konta lub repozytorium GitHub, postępuj zgodnie z tymi instrukcjami , aby utworzyć zasoby.

Integracja usługi GitHub z usługą Synapse Studio obsługuje zarówno publiczne usługi GitHub (czyli https://github.com) i GitHub Enterprise. Możesz używać zarówno publicznych, jak i prywatnych repozytoriów GitHub, o ile masz uprawnienia do odczytu i zapisu do repozytorium w usłudze GitHub.

Ustawienia usługi GitHub

Podczas nawiązywania połączenia z repozytorium Git najpierw wybierz typ repozytorium jako GitHub, a następnie podaj swoje konto GitHub, adres URL serwera GitHub Enterprise Server, jeśli używasz serwera GitHub Enterprise Server lub nazwy organizacji GitHub Enterprise, jeśli używasz usługi GitHub Enterprise Cloud. Wybierz Kontynuuj.

Uwaga

Jeśli używasz usługi GitHub Enterprise Cloud, pozostaw pole wyboru Użyj serwera GitHub Enterprise Server wyczyszczone.

GitHub repository settings

W okienku konfiguracji są wyświetlane następujące ustawienia repozytorium GitHub:

Ustawienie Opis Wartość
Typ repozytorium Typ repozytorium kodu usługi Azure Repos. GitHub
Korzystanie z usługi GitHub Enterprise Pole wyboru, aby wybrać pozycję GitHub Enterprise niezaznaczone (ustawienie domyślne)
GitHub Enterprise URL Główny adres URL usługi GitHub Enterprise (musi być adresem HTTPS dla lokalnego serwera GitHub Enterprise). Na przykład: https://github.mydomain.com. Wymagane tylko w przypadku wybrania opcji Użyj usługi GitHub Enterprise <your GitHub enterprise url>
Konto usługi GitHub Nazwa konta usługi GitHub. Tę nazwę można znaleźć pod https://github.com/{account nazwą}/{nazwa repozytorium}. Przejście do tej strony powoduje wyświetlenie monitu o wprowadzenie poświadczeń OAuth usługi GitHub do konta usługi GitHub. <your GitHub account name>
Nazwa repozytorium Nazwa repozytorium kodu usługi GitHub. Konta usługi GitHub zawierają repozytoria Git do zarządzania kodem źródłowym. Możesz utworzyć nowe repozytorium lub użyć istniejącego repozytorium, które znajduje się już na Twoim koncie. <your repository name>
Gałąź współpracy Gałąź współpracy usługi GitHub używana do publikowania. Domyślnie jego wzorzec. Zmień to ustawienie w przypadku, gdy chcesz opublikować zasoby z innej gałęzi. <your collaboration branch>
Folder główny Folder główny w gałęzi współpracy usługi GitHub. <your root folder name>
Importowanie istniejących zasobów do repozytorium Określa, czy mają być importowane istniejące zasoby z programu Synapse Studio do repozytorium Git. Zaznacz pole, aby zaimportować zasoby obszaru roboczego (z wyjątkiem pul) do skojarzonego repozytorium Git w formacie JSON. Ta akcja eksportuje każdy zasób indywidualnie. Jeśli to pole nie jest zaznaczone, istniejące zasoby nie są importowane. Wybrane (ustawienie domyślne)
Zaimportuj zasób do tej gałęzi Wybierz, która gałąź zasobów (skrypt SQL, notes, definicja zadania platformy Spark, zestaw danych, przepływ danych itp.) jest importowana.

Organizacje usługi GitHub

Połączenie do organizacji usługi GitHub wymaga, aby organizacja udzieliła uprawnień do programu Synapse Studio. Użytkownik z uprawnieniami ADMINISTRATORA w organizacji musi wykonać poniższe kroki.

Nawiązywanie połączenia z serwisem GitHub po raz pierwszy

Jeśli po raz pierwszy nawiązujesz połączenie z usługą GitHub z usługi Synapse Studio, wykonaj następujące kroki, aby nawiązać połączenie z organizacją usługi GitHub.

  1. W okienku Konfiguracja usługi Git wprowadź nazwę organizacji w polu Konto usługi GitHub. Zostanie wyświetlony monit o zalogowanie się do usługi GitHub.

  2. Zaloguj się przy użyciu poświadczeń użytkownika.

  3. Zostanie wyświetlony monit o autoryzowanie usługi Synapse jako aplikacji o nazwie Azure Synapse. Na tym ekranie zostanie wyświetlona opcja udzielenia uprawnień dla usługi Synapse w celu uzyskania dostępu do organizacji. Jeśli nie widzisz opcji udzielenia uprawnień, poproś administratora o ręczne przyznanie uprawnienia za pośrednictwem usługi GitHub.

Po zakończeniu tych kroków obszar roboczy będzie mógł łączyć się zarówno z repozytoriami publicznymi, jak i prywatnymi w organizacji. Jeśli nie możesz nawiązać połączenia, spróbuj wyczyścić pamięć podręczną przeglądarki i ponowić próbę.

Już nawiązane połączenie z usługą GitHub przy użyciu konta osobistego

Jeśli masz już połączenie z usługą GitHub i udzielono tylko uprawnień dostępu do konta osobistego, wykonaj poniższe kroki, aby udzielić uprawnień organizacji.

  1. Przejdź do witryny GitHub i otwórz Ustawienia.

    Open GitHub settings

  2. Wybierz Aplikacje. Na karcie Autoryzowane aplikacje OAuth powinna być widoczna usługa Azure Synapse.

    Authorize OAuth Apps

  3. Wybierz usługę Azure Synapse i przyznaj jej dostęp do organizacji.

    Grant organization permission

Po wykonaniu tych kroków obszar roboczy będzie mógł łączyć się zarówno z repozytoriami publicznymi, jak i prywatnymi w organizacji.

Kontrola wersji

Systemy kontroli wersji (znane również jako kontrola źródła) umożliwiają deweloperom współpracę nad kodem i śledzenie zmian. Kontrola źródła jest podstawowym narzędziem dla projektów z wieloma deweloperami.

Tworzenie gałęzi funkcji

Każde repozytorium Git skojarzone z programem Synapse Studio ma gałąź współpracy. (main lub master jest domyślną gałęzią współpracy). Użytkownicy mogą również tworzyć gałęzie funkcji, klikając pozycję + Nowa gałąź na liście rozwijanej gałęzi.

Create new branch

Po pojawieniu się nowego okienka gałęzi wprowadź nazwę gałęzi funkcji i wybierz gałąź, z której będzie bazować praca.

Create branch based on private branch

Gdy wszystko będzie gotowe do scalenia zmian z gałęzi funkcji do gałęzi współpracy, kliknij listę rozwijaną gałęzi i wybierz pozycję Utwórz żądanie ściągnięcia. Ta akcja powoduje przejście do dostawcy Git, w którym można zgłaszać żądania ściągnięcia, przeglądać kod i scalać zmiany w gałęzi współpracy. Możesz publikować tylko w usłudze Synapse z gałęzi współpracy.

Create a new pull request

Konfigurowanie ustawień publikowania

Domyślnie program Synapse Studio generuje szablony obszarów roboczych i zapisuje je w gałęzi o nazwie workspace_publish. Aby skonfigurować niestandardową gałąź publikowania, dodaj publish_config.json plik do folderu głównego w gałęzi współpracy. Podczas publikowania program Synapse Studio odczytuje ten plik, wyszukuje pole publishBranchi zapisuje pliki szablonów obszaru roboczego w określonej lokalizacji. Jeśli gałąź nie istnieje, program Synapse Studio automatycznie go utworzy. A przykład tego, jak wygląda ten plik, znajduje się poniżej:

{
    "publishBranch": "workspace_publish"
}

Program Synapse Studio może mieć tylko jedną gałąź publikowania jednocześnie. Po określeniu nowej gałęzi publikowania oryginalna gałąź publikowania nie zostanie usunięta. Jeśli chcesz usunąć poprzednią gałąź publikowania, usuń ją ręcznie.

Publikowanie zmian kodu

Po scaleniu zmian w gałęzi współpracy kliknij pozycję Publikuj , aby ręcznie opublikować zmiany kodu w gałęzi współpracy w usłudze Synapse.

Publish changes

Zostanie otwarte okienko boczne, w którym potwierdzisz, że gałąź publikowania i oczekujące zmiany są poprawne. Po zweryfikowaniu zmian kliknij przycisk OK , aby potwierdzić publikowanie.

Confirm the correct publish branch

Ważne

Gałąź współpracy nie jest reprezentatywna dla tego, co zostało wdrożone w usłudze. Zmiany w gałęzi współpracy muszą zostać opublikowane ręcznie.

Przełączanie do innego repozytorium Git

Aby przełączyć się do innego repozytorium Git, przejdź do strony konfiguracji usługi Git w centrum zarządzania w obszarze Kontrola źródła. Wybierz pozycję Odłącz.

Git icon

Wprowadź nazwę obszaru roboczego i kliknij pozycję Rozłącz, aby usunąć repozytorium Git skojarzone z obszarem roboczym.

Po usunięciu skojarzenia z bieżącym repozytorium możesz skonfigurować ustawienia usługi Git tak, aby korzystały z innego repozytorium, a następnie zaimportować istniejące zasoby do nowego repozytorium.

Ważne

Usunięcie konfiguracji usługi Git z obszaru roboczego nie powoduje usunięcia niczego z repozytorium. Obszar roboczy usługi Synapse zawiera wszystkie opublikowane zasoby. Obszar roboczy można edytować bezpośrednio w usłudze.

Najlepsze rozwiązania dotyczące integracji z usługą Git

  • Uprawnienia. Po połączeniu repozytorium Git z obszarem roboczym każda osoba, która może uzyskać dostęp do repozytorium Git z dowolną rolą w obszarze roboczym, może aktualizować artefakty, takie jak skrypt SQL, notes, definicja zadania platformy Spark, zestaw danych, przepływ danych i potok w trybie git. Zazwyczaj nie chcesz, aby każdy członek zespołu miał uprawnienia do aktualizowania obszaru roboczego. Przyznaj tylko uprawnienia repozytorium git autorom artefaktów obszaru roboczego usługi Synapse.
  • Współpraca. Zaleca się, aby nie zezwalać na bezpośrednie ewidencjonowania w gałęzi współpracy. To ograniczenie może pomóc zapobiec usterce, ponieważ każde zaewidencjonowanie przechodzi proces przeglądu żądania ściągnięcia opisany w temacie Tworzenie gałęzi funkcji.
  • Tryb na żywo usługi Synapse. Po opublikowaniu w trybie git wszystkie zmiany zostaną odzwierciedlone w trybie na żywo usługi Synapse. W trybie na żywo usługi Synapse publikowanie jest wyłączone. Możesz również wyświetlać, uruchamiać artefakty w trybie na żywo, jeśli udzielono ci odpowiednich uprawnień.
  • Edytuj artefakty w programie Studio. Program Synapse Studio to jedyne miejsce, w którym można włączyć kontrolę źródła obszaru roboczego i automatycznie synchronizować zmiany w usłudze Git. Każda zmiana za pośrednictwem zestawu SDK, programu PowerShell nie jest synchronizowana z usługą git. Zalecamy zawsze edytowanie artefaktu w programie Studio po włączeniu usługi Git.

Rozwiązywanie problemów z integracją z usługą Git

Dostęp do trybu git

Jeśli udzielono Ci uprawnień do repozytorium GitHub git połączonego z obszarem roboczym, ale nie możesz uzyskać dostępu do trybu Git:

  1. Wyczyść pamięć podręczną i odśwież stronę.

  2. Zaloguj się do konta usługi GitHub.

Nieaktualna gałąź publikowania

Jeśli gałąź publikowania nie jest zsynchronizowana z gałęzią współpracy i zawiera nieaktualne zasoby pomimo ostatniego opublikowania, spróbuj wykonać następujące czynności:

  1. Usuwanie bieżącego repozytorium Git

  2. Skonfiguruj ponownie usługę Git przy użyciu tych samych ustawień, ale upewnij się, że zaznaczono opcję Importuj istniejące zasoby do repozytorium i wybierz tę samą gałąź.

  3. Utwórz żądanie ściągnięcia, aby scalić zmiany w gałęzi współpracy

Nieobsługiwane funkcje

  • Program Synapse Studio nie zezwala na wybieranie zatwierdzeń ani selektywnego publikowania zasobów.
  • Program Synapse Studio nie obsługuje niestandardowego komunikatu zatwierdzenia.
  • Zgodnie z projektem akcja usuwania w programie Studio jest zatwierdzana bezpośrednio w usłudze Git

Następne kroki