Controllo del codice sorgente in Synapse Studio
Per impostazione predefinita, Synapse Studio esegue le operazioni di creazione direttamente nel servizio Synapse. Se è necessario collaborare per il controllo del codice sorgente tramite Git, Synapse Studio consente di associare l'area di lavoro a un repository Git, Azure DevOps o GitHub.
Questo articolo descrive come configurare e usare un'area di lavoro Synapse con il repository Git abilitato. Vengono inoltre evidenziate alcune procedure consigliate e una guida alla risoluzione dei problemi.
Nota
Per usare GitHub in Azure Gov e Microsoft Azure gestito da 21Vianet, è possibile usare un'applicazione OAuth GitHub personalizzata in Synapse Studio per l'integrazione Git. L'esperienza di configurazione è identica ad ADF. È possibile fare riferimento al blog degli annunci.
Prerequisiti
Per configurare, modificare le impostazioni e disconnettere un repository Git con Synapse, gli utenti devono avere il ruolo di Collaboratore (Controllo degli accessi in base al ruolo di Azure) o un ruolo superiore, nell'area di lavoro Synapse.
Configurare il repository Git in Synapse Studio
Dopo aver avviato Synapse Studio, è possibile configurare un repository Git nell'area di lavoro. Un'area di lavoro di Synapse Studio può essere associata a un solo repository Git alla volta.
Metodo di configurazione 1: barra globale
Nella barra globale di Synapse Studio selezionare il menu a discesa Synapse Live e quindi selezionare Configura repository del codice.
Metodo di configurazione 2: hub di gestione
Passare all'hub di gestione di Synapse Studio. Selezionare Configurazione Git nella sezione Controllo codice sorgente. Se non è stato connesso alcun repository, fare clic su Configura.
È possibile connettere il repository Git di Azure DevOps o GitHub nell'area di lavoro.
Connettersi con il repository Git di Azure DevOps
È possibile associare un'area di lavoro Synapse a un repository Azure DevOps per il controllo del codice sorgente, la collaborazione, il controllo delle versioni e così via. Se non si ha un'organizzazione o un repository Azure DevOps, seguire queste istruzioni per creare le risorse.
Impostazioni del repository Git di Azure DevOps
Quando si effettua la connessione al repository Git, selezionare prima di tutto il tipo di repository ad esempio repository Git di Azure DevOps, quindi selezionare un tenant di Microsoft Entra nell'elenco a discesa e fare clic su Continua.
Il riquadro di configurazione mostra le impostazioni Git di Azure DevOps seguenti:
Impostazione | Descrizione | Valore |
---|---|---|
Tipo di repository | Tipo del repository di codice Azure Repos. |
Azure DevOps Git o GitHub |
Accesso tra tenant | Casella di controllo per accedere usando un account tra tenant. | non selezionato (impostazione predefinita) |
Microsoft Entra ID | Nome del tenant di Microsoft Entra. | <your tenant name> |
Account di Azure DevOps | Il nome dell'organizzazione di Azure Repos. È possibile individuare il nome dell'organizzazione Azure Repos all'indirizzo https://{organization name}.visualstudio.com . È possibile accedere all'organizzazione Azure Repos e quindi accedere al proprio profilo di Visual Studio e visualizzare i repository e i progetti. |
<your organization name> |
Nome progetto | Il nome del progetto Azure Repos. È possibile trovare il nome del progetto Azure Repos all'indirizzo https://{organization name}.visualstudio.com/{project name} . |
<your Azure Repos project name> |
Nome repository | Il nome del repository di codice Azure Repos. I progetti Azure Repos contengono repository GIT per gestire il codice sorgente man mano che aumentano le dimensioni del progetto. È possibile creare un nuovo repository o usare un repository già presente nel progetto. | <your Azure Repos code repository name> |
Ramo di collaborazione | Ramo di collaborazione di Azure Repos usato per la pubblicazione. L'impostazione predefinita è master . Modificare questa impostazione se si vuole pubblicare risorse da un altro ramo. È possibile selezionare rami esistenti o crearne uno nuovo |
<your collaboration branch name> |
Cartella radice | Cartella radice nel ramo di collaborazione di Azure Repos. | <your root folder name> |
Importa risorse esistenti nel repository | Specifica se importare le risorse esistenti da Synapse Studio in un repository Git di Azure Repos. Selezionare la casella per importare le risorse dell'area di lavoro (ad eccezione dei pool) nel repository Git associato in formato JSON. Questa azione esporta ogni risorsa singolarmente. Se questa casella non è selezionata, le risorse esistenti non vengono importate. | Selezionato (impostazione predefinita) |
Importa la risorsa in questo ramo | Selezionare il ramo in cui verranno importate le risorse (script SQL, notebook, definizione del processo Spark, set di dati, flusso di dati e così via). |
È anche possibile usare il collegamento al repository per puntare rapidamente al repository Git a cui connettersi.
Nota
Azure Synapse non supporta la connessione al repository Prem di Azure DevOps.
Usare un tenant Microsoft Entra diverso
Il repository Git di Azure Repos può trovarsi in un tenant di Microsoft Entra diverso. Per specificare un tenant di Microsoft Entra diverso, è necessario disporre delle autorizzazioni di amministratore per la sottoscrizione di Azure usata. Per altre informazioni, vedere Modificare l'amministratore della sottoscrizione.
Importante
Per connettersi a un altro Microsoft Entra ID, l'utente connesso deve far parte dell'istanza di Active Directory corrispondente.
Usare l'account Microsoft personale
Per usare un account Microsoft personale per l'integrazione con Git, è possibile collegare il repository di Azure personale con l'istanza di Active Directory dell'organizzazione.
Aggiungere come guest l'account Microsoft personale all'istanza di Active Directory dell'organizzazione. Per altre informazioni, vedere Aggiungere utenti di Collaborazione B2B di Microsoft Entra nel portale di Azure.
Accedere al portale di Azure con l'account Microsoft personale. Passare quindi all'istanza di Active Directory dell'organizzazione.
Passare alla sezione Azure DevOps, in cui è possibile visualizzare il repository personale. Selezionare il repository e connettersi ad Active Directory.
Dopo questi passaggi di configurazione, il repository personale è disponibile quando si configura l'integrazione di Git nell'interfaccia utente di Synapse Studio.
Per altre informazioni sulla connessione di Azure Repos ad Active Directory dell'organizzazione, vedere Connettere l'organizzazione a Microsoft Entra ID.
Usare un account Azure DevOps tra tenant
Quando Azure DevOps non si trova nello stesso tenant dell'area di lavoro Synapse, è possibile configurare l'area di lavoro con un account Azure DevOps tra tenant.
Selezionare l'opzione Accesso tra tenant e fare clic su Continua.
Nella finestra di dialogo, selezionare OK.
Fare clic su Usa un altro account e accedere con l'account Azure DevOps.
Dopo l'accesso, scegliere la directory e il repository e configurarlo di conseguenza.
Nota
Per accedere all'area di lavoro, è necessario usare il primo accesso per accedere all'account utente dell'area di lavoro Synapse. L'account Azure DevOps tra tenant viene usato solo per accedere e ottenere l'accesso al repository di Azure DevOps associato a questa area di lavoro Synapse.
Connettersi con GitHub
È possibile associare un'area di lavoro a un repository GitHub per il controllo del codice sorgente, la collaborazione e il controllo delle versioni. Se non si ha un account o un repository GitHub, seguire queste istruzioni per creare le risorse.
L'integrazione di GitHub con Synapse Studio supporta GitHub pubblico (ovvero https://github.com) e GitHub Enterprise. È possibile usare i repository GitHub pubblici e privati purché siano state ottenute le autorizzazioni di lettura e scrittura nel repository in GitHub.
Impostazioni di GitHub
Quando si effettua la connessione al repository Git, selezionare prima di tutto GitHub come tipo di repository e quindi specificare l'account GitHub, l'URL di GitHub Enterprise Server se si usa GitHub Enterprise Server oppure il nome dell'organizzazione GitHub Enterprise se si usa GitHub Enterprise Cloud. Selezionare Continua.
Nota
Se si usa GitHub Enterprise Cloud, lasciare deselezionata la casella di controllo Usa GitHub Enterprise Server.
Il riquadro di configurazione visualizza le impostazioni seguenti del repository GitHub:
Impostazione | Descrizione | valore |
---|---|---|
Tipo di repository | Tipo del repository di codice Azure Repos. | GitHub |
Use GitHub Enterprise (Usa GitHub Enterprise) | Casella di controllo per selezionare GitHub Enterprise | non selezionato (impostazione predefinita) |
GitHub Enterprise URL (URL GitHub Enterprise) | URL radice di GitHub Enterprise (deve essere HTTPS per il server GitHub Enterprise locale). Ad esempio: https://github.mydomain.com . Obbligatorio solo se si seleziona Usa GitHub Enterprise |
<your GitHub enterprise url> |
Account GitHub | Nome dell'account GitHub. Questo nome è disponibile nella pagina https://github.com/{account name}/{repository name}. Se si passa a questa pagina, viene chiesto di immettere le credenziali OAuth di GitHub per l'account GitHub. | <your GitHub account name> |
Nome repository | Nome del repository del codice GitHub. Gli account GitHub contengono repository Git per la gestione del codice sorgente. È possibile creare un nuovo repository o usarne uno esistente già presente nell'account. | <your repository name> |
Ramo di collaborazione | Ramo di collaborazione di GitHub usato per la pubblicazione. Per impostazione predefinita, si tratta del ramo master. Modificare questa impostazione se si vuole pubblicare risorse da un altro ramo. | <your collaboration branch> |
Cartella radice | Cartella radice nel ramo di collaborazione di GitHub. | <your root folder name> |
Importa risorse esistenti nel repository | Specifica se importare le risorse esistenti da Synapse Studio in un repository Git. Selezionare la casella per importare le risorse dell'area di lavoro (ad eccezione dei pool) nel repository Git associato in formato JSON. Questa azione esporta ogni risorsa singolarmente. Se questa casella non è selezionata, le risorse esistenti non vengono importate. | Selezionata (impostazione predefinita) |
Importa la risorsa in questo ramo | Selezionare il ramo in cui verranno importate le risorse (script SQL, notebook, definizione del processo Spark, set di dati, flusso di dati e così via). |
Organizzazioni GitHub
La connessione a un'organizzazione GitHub prevede che l'organizzazione conceda l'autorizzazione a Synapse Studio. Un utente con autorizzazioni ADMIN per l'organizzazione deve eseguire i passaggi seguenti.
Prima connessione a GitHub
Se si effettua la connessione a GitHub da Synapse Studio per la prima volta, seguire questa procedura per connettersi a un'organizzazione GitHub.
Nel riquadro Configurazione Git immettere il nome dell'organizzazione nel campo Account GitHub. Viene visualizzata una richiesta di accesso a GitHub.
Accedere usando le credenziali utente.
Viene chiesto di autorizzare Synapse come applicazione denominata Azure Synapse. In questa schermata viene visualizzata un'opzione per autorizzare Synapse ad accedere all'organizzazione. Se non viene visualizzata l'opzione per concedere l'autorizzazione, chiedere a un amministratore di concedere manualmente l'autorizzazione tramite GitHub.
Dopo aver eseguito questi passaggi, l'area di lavoro è in grado di connettersi ai repository pubblici e privati all'interno dell'organizzazione. Se non è possibile connettersi, provare a cancellare la cache del browser e riprovare.
Connessione a GitHub già effettuata con un account personale
Se è già stata effettuata la connessione a GitHub ed è stata concessa solo l'autorizzazione per accedere a un account personale, seguire questa procedura per concedere le autorizzazioni a un'organizzazione.
Passare a GitHub e aprire Impostazioni.
Seleziona Candidature. Nella scheda App OAuth autorizzate verrà visualizzato Azure Synapse.
Selezionare Azure Synapse e concedere l'accesso all'organizzazione.
Dopo aver completato questa procedura, l'area di lavoro è in grado di connettersi ai repository pubblici e privati all'interno dell'organizzazione.
Controllo della versione
I sistemi di controllo della versione (noti anche come controllo del codice sorgente) consentono agli sviluppatori di collaborare alla creazione e alla modifica del codice e tenere traccia delle modifiche. Il controllo del codice sorgente è uno strumento essenziale per i progetti multi-sviluppatore.
Creazione di rami di funzionalità
Ogni repository Git associato a Synapse Studio dispone di un ramo di collaborazione. (main
o master
è il ramo di collaborazione predefinito). Gli utenti possono anche creare i rami delle funzionalità facendo clic su + Nuovo ramo nell'elenco a discesa del ramo.
Quando viene visualizzato il riquadro del nuovo ramo, immettere il nome del ramo di funzionalità e selezionare un ramo su cui basare la sessione di lavoro.
Quando si è pronti per unire le modifiche dal ramo di funzionalità al ramo di collaborazione, fare clic sull'elenco a discesa del ramo e selezionare Crea richiesta pull. Viene visualizzato il provider Git, in cui è possibile generare richieste di pull, eseguire revisioni del codice e unire le modifiche apportate al ramo di collaborazione. Dal ramo di collaborazione è possibile solo eseguire la pubblicazione nel servizio Synapse.
Configurare le impostazioni di pubblicazione
Per impostazione predefinita, Synapse Studio genera i modelli di area di lavoro e li salva in un ramo denominato workspace_publish
. Per configurare un ramo di pubblicazione personalizzato, aggiungere un file publish_config.json
alla cartella radice nel ramo di collaborazione. Durante la pubblicazione, Synapse Studio legge questo file, cerca il campo publishBranch
e salva i file del modello dell'area di lavoro nel percorso specificato. Se il ramo non esiste, Synapse Studio lo creerà automaticamente. Di seguito è riportato un esempio dell'aspetto del file:
{
"publishBranch": "workspace_publish"
}
Synapse Studio può avere un solo ramo di pubblicazione alla volta. Quando si specifica un nuovo ramo di pubblicazione, il ramo di pubblicazione originale non verrà eliminato. Se si vuole rimuovere il ramo di pubblicazione precedente, eliminarlo manualmente.
Pubblicare le modifiche al codice
Dopo aver unito le modifiche al ramo di collaborazione, fare clic su Pubblica per pubblicare manualmente le modifiche apportate al codice nel ramo di collaborazione nel servizio Synapse.
Si apre un riquadro laterale in cui l'utente conferma che il ramo di pubblicazione e le modifiche in sospeso sono corretti. Dopo aver verificato le modifiche, fare clic su OK per confermare la pubblicazione.
Importante
Il ramo di collaborazione non è rappresentativo di ciò che viene distribuito nel servizio. Le modifiche nel ramo di collaborazione devono essere pubblicate manualmente.
Passare a un repository GIT diverso
Per passare a un repository Git diverso, andare alla pagina Configurazione Git nell'hub Gestione in Controllo codice sorgente. Selezionare Disconnetti.
Immettere il nome dell'area di lavoro e fare clic su Disconnetti per rimuovere il repository Git associato all'area di lavoro.
Dopo aver rimosso l'associazione al repository corrente è possibile configurare le impostazioni di Git per usare un repository diverso e quindi importare le risorse esistenti nel nuovo repository.
Importante
La rimozione della configurazione Git da un'area di lavoro non comporta l'eliminazione di elementi dal repository. L'area di lavoro Synapse contiene tutte le risorse pubblicate. È possibile continuare a modificare l'area di lavoro direttamente nel servizio.
Procedure consigliate per l'integrazione GIT
- Autorizzazione. Dopo aver connesso un repository Git all'area di lavoro, chiunque possa accedere a tale repository con qualsiasi ruolo nell'area di lavoro è in grado di aggiornare gli artefatti, ad esempio script SQL, notebook, definizione del processo Spark, set di dati, flusso di dati e pipeline in modalità Git. In genere è preferibile che non tutti i membri del team dispongano delle autorizzazioni per aggiornare l'area di lavoro. Concedere solo l'autorizzazione del repository Git agli autori degli artefatti dell'area di lavoro Synapse.
- Collaborazione. È consigliabile non consentire le archiviazioni dirette al ramo di collaborazione. Questa limitazione può aiutare a prevenire i bug in quanto ogni archiviazione passa attraverso un processo di revisione delle richieste pull descritto in Creazione di rami di funzionalità.
- Modalità Live di Synapse: Dopo la pubblicazione in modalità Git, tutte le modifiche vengono riflesse in modalità dinamica Synapse. In modalità Live di Synapse la pubblicazione è disabilitata. È anche possibile visualizzare gli artefatti in modalità Live se è stata concessa l'autorizzazione appropriata.
- Modificare gli artefatti in Studio. Synapse Studio è l'unica posizione in cui è possibile abilitare il controllo del codice sorgente dell'area di lavoro e sincronizzare automaticamente le modifiche apportate a Git. Qualsiasi modifica apportata tramite SDK, PowerShell, non viene sincronizzata con Git. È consigliabile modificare sempre l'artefatto in Studio quando Git è abilitato.
Risoluzione dei problemi di integrazione con Git
Accedere alla modalità Git
Se è stata concessa l'autorizzazione di accesso al repository GitHub collegato all'area di lavoro, ma non è possibile accedere alla modalità Git:
Cancellare la cache e aggiornare la pagina.
Accedere all'account GitHub.
Ramo di pubblicazione non aggiornato
Se il ramo di pubblicazione non è sincronizzato con il ramo master e contiene risorse non aggiornate nonostante una pubblicazione recente, provare con i passaggi seguenti:
Rimuovere il repository Git corrente
Riconfigurare Git con le stesse impostazioni, ma verificando di aver selezionato Importa risorse esistenti nel repository e di scegliere lo stesso ramo.
Creare una richiesta pull per unire le modifiche al ramo di collaborazione
Funzionalità non supportate
- Synapse Studio non consente il cherry-pick di commit o la pubblicazione selettiva delle risorse.
- Synapse Studio non supporta il messaggio di commit personalizzato automaticamente.
- Da progettazione viene eseguito il commit diretto dell'azione di eliminazione in Studio in Git
Passaggi successivi
- Per implementare l'integrazione e la distribuzione continue, vedere Integrazione e recapito continui (CI/CD).