Nozioni di base sull'integrazione Git
Questo articolo illustra le seguenti attività di base nello strumento di integrazione Git di Microsoft Fabric:
Consigliamo di leggere l'overview dell'integrazione di Git prima di iniziare.
Prerequisiti
Per integrare Git con l'area di lavoro di Microsoft Fabric, è necessario configurare i prerequisiti seguenti per Fabric e Git.
Prerequisiti per il tessuto
Per accedere alla funzionalità di integrazione Git, è necessaria una capacità Fabric. È necessaria una capacità di Fabric per utilizzare tutti gli elementi supportati da Fabric. Se non si ha ancora una sottoscrizione, iscriversi per ottenere una versione di valutazione gratuita. I clienti che hanno già una capacità Power BI Premiumpossono usare tale capacità, ma tenete presente che alcuni SKU di Power BI supportano esclusivamente elementi di Power BI.
Inoltre, le seguenti opzioni del tenant devono essere abilitate dal portale di amministrazione:
- Gli utenti possono creare elementi Fabric
- Gli utenti possono sincronizzare gli elementi dell'area di lavoro con i propri repository Git
- Solo per gli utenti GitHub: gli utenti possono sincronizzare gli elementi dell'area di lavoro con i repository GitHub
Queste opzioni possono essere abilitate dall'amministratore tenant, dall'amministratore di capacità o dall'amministratore dell'area di lavoro, a seconda delle impostazioni dell'organizzazione.
I prerequisiti di Git
L'integrazione Git è attualmente supportata per Azure DevOps e GitHub. Per usare l'integrazione di Git con l'area di lavoro di Fabric, è necessario quanto segue in Azure DevOps o GitHub:
- Un account Azure attivo registrato con lo stesso utente che usa l'area di lavoro Fabric. Creare un account gratuito.
- Accesso a un repository esistente.
Connettere un'area di lavoro a un repository Git
Connettersi a un repository Git
Solo un amministratore dell'area di lavoro può connettere un'area di lavoro a un repository, ma una volta effettuata la connessione, chiunque abbia l'autorizzazione può lavorare nell'area di lavoro. Se non si è un amministratore, chiedere assistenza all'amministratore per la connessione. Per connettere un'area di lavoro a un repository Azure o GitHub, seguire questa procedura:
Accedere a Fabric e passare all'area di lavoro con cui connettersi.
Passare alle impostazioni dell'area di lavoro
Selezionare Integrazione con Git.
Selezionare il provider Git. Attualmente, Azure DevOps GIT e GitHub sono supportati.
Se si seleziona Azure DevOps, selezionare Connetti per accedere automaticamente all'account Azure Repos registrato all'utente Microsoft Entra connesso a Fabric.
Connettersi a un'area di lavoro
Se l'area di lavoro è già connessa a GitHub, seguire le istruzioni per Connettersi a un'area di lavoro condivisa.
Dal menu a discesa specificare i dettagli seguenti sul ramo a cui ci si vuole connettere:
- Azienda
- Progetto
- Repository Git.
- Ramo (selezionare un ramo esistente usando il menu a discesa oppure selezionare + Nuovo ramo per creare un nuovo ramo. È possibile connettersi a un solo ramo alla volta.
- Cartella (digitare il nome di una cartella esistente o immettere un nome per creare una nuova cartella. Se si lascia vuoto il nome della cartella, il contenuto viene creato nella cartella radice. È possibile connettersi a una sola cartella alla volta.
Selezionare Connettersi e sincronizzare.
Durante la sincronizzazione iniziale, se l'area di lavoro o il ramo Git è vuoto, il contenuto viene copiato dalla posizione non vuota a quella vuota. Se sia l'area di lavoro che il ramo Git hanno contenuto, viene chiesto in quale direzione deve andare la sincronizzazione. Per altre informazioni su questa sincronizzazione iniziale, vedere Connettersi e sincronizzare.
Dopo la connessione, l'area di lavoro visualizza informazioni sul controllo del codice sorgente che consente all'utente di visualizzare il ramo connesso, lo stato di ogni elemento nel ramo e l'ora dell'ultima sincronizzazione.
Per mantenere l'area di lavoro sincronizzata con il ramo Git, eseguire il commit di tutte le modifiche apportate nell'area di lavoro nel ramo Git e aggiornare l'area di lavoro ogni volta che chiunque crea nuovi commit nel ramo Git.
Esegui il commit delle modifiche su Git
Dopo aver eseguito la connessione a una cartella Git, modificare l'area di lavoro come di consueto. Tutte le modifiche salvate vengono salvate solo nell'area di lavoro. Quando si è pronti, è possibile eseguire il commit delle modifiche nel ramo Git, oppure annullare le modifiche e ripristinare lo stato precedente.
Altre informazioni sui commit.
Per eseguire il commit delle modifiche al ramo Git, seguire questa procedura:
Passare all'area di lavoro.
Selezionare l'icona Controllo del codice sorgente. Questa icona mostra il numero di modifiche non sottoposte a commit.
Selezionare le modifiche nel pannello di controllo del codice sorgente. Viene visualizzato un elenco con tutti gli elementi modificati e un'icona che indica se l'elemento è nuovo
, modificato
, in conflitto
, o eliminato
.
Selezionare gli elementi su cui eseguire il commit. Spuntare la casella superiore per selezionare tutti gli elementi.
Aggiungere un commento nella casella. Se non si aggiunge un commento, viene aggiunto automaticamente un messaggio predefinito.
Selezionare Commit.
Dopo il commit delle modifiche, gli elementi cui è stato eseguito il commit vengono rimossi dall'elenco e l'area di lavoro ora fa riferimento al nuovo commit sincronizzato.
Al termine del commit, lo stato degli elementi selezionati cambia da Non sottoposto a commit a Sincronizzato.
Aggiorna l'area di lavoro da Git
Ogni volta che chiunque esegue il commit di una nuova modifica al ramo Git connesso, appare una notifica nell'area di lavoro pertinente. Usare il pannello di controllo del codice sorgente per importare le modifiche, unioni o ripristini più recenti nell'area di lavoro e aggiornare in tempo reale gli elementi. Vengono aggiornate anche le modifiche apportate alle cartelle. Altre informazioni sull'aggiornamento.
Per aggiornare un'area di lavoro, attenersi alla procedura seguente:
- Passare all'area di lavoro.
- Selezionare l'icona Controllo del codice sorgente.
- Selezionare Aggiornamenti nel pannello di controllo del codice sorgente. Appare un elenco con tutti gli elementi modificati nel ramo dall'ultimo aggiornamento.
- Selezionare Aggiorna tutto.
Dopo l'aggiornamento, l'elenco di elementi viene rimosso e l'area di lavoro punta alla nuova area di lavoro in cui è sincronizzata.
Al termine dell'aggiornamento, lo stato degli elementi viene modificato in Sincronizzato.
Disconnettere un'area di lavoro da Git
Solo un amministratore dell'area di lavoro può disconnettere un'area di lavoro da un repository Git. Se non si è un amministratore, chiedere assistenza all'amministratore per la disconnessione. Se si è un amministratore e si vuole disconnettere il repository, seguire questa procedura:
- Passare alle impostazioni dell'area di lavoro
- Selezionare Integrazione con Git
- Selezionare Disconnetti spazio di lavoro
- Selezionare di nuovo Disconnetti per confermare.
Autorizzazioni
Le azioni che si possono eseguire in un'area di lavoro dipendono dalle autorizzazioni disponibili sia nell'area di lavoro che nel repository Git. Per una descrizione più dettagliata delle autorizzazioni, vedere Autorizzazioni.
Considerazioni e limitazioni
Limitazioni generali per l'integrazione di Git
- Il metodo di autenticazione in Fabric deve essere almeno sicuro quanto il metodo di autenticazione per Git. Ad esempio, se Git richiede l'autenticazione a più fattori, anche Fabric deve richiedere l'autenticazione a più fattori.
- I set di dati di Power BI connessi ad Analysis Services non sono attualmente supportati.
- Le aree di lavoro con app modello installate non possono essere connesse a Git.
- I moduli secondari non sono supportati.
- I cloud sovrani non sono supportati.
- L'account Azure DevOps deve essere registrato allo stesso utente che usa l'area di lavoro di Fabric.
- Azure DevOps non è supportato se la convalida dei criteri di accesso condizionale IP è abilitata.
- L'amministratore tenant deve abilitare le esportazioni tra aree geografiche se l'area di lavoro e il repository Git si trovano in due aree geografiche diverse.
- Se l'organizzazione ha configurato l'accesso condizionale, assicurarsi che l'del servizio Power BI abbia le stesse condizioni di impostate affinché l'autenticazione funzioni come previsto.
- La dimensione del commit è limitata a 125 MB.
Limitazioni di GitHub Enterprise
Alcune impostazioni di GitHub Enterprise non sono supportate. Ad esempio:
- Elenco IP consentiti
- Rete privata
- Domini personalizzati
Limitazioni dell'area di lavoro
- Solo l'amministratore dell'area di lavoro può gestire le connessioni al repository Git, come la connessione, la disconnessione o l'aggiunta di un ramo.
Dopo la connessione, chiunque disponga dell'autorizzazione può lavorare nell'area di lavoro.
Limitazioni dei rami e delle cartelle
- La lunghezza massima del nome del ramo è di 244 caratteri.
- La lunghezza massima del percorso completo per i nomi dei file è di 250 caratteri. I nomi lunghi falliscono.
- La dimensione massima del file è di 25 MB.
- La struttura delle cartelle viene mantenuta fino a 10 livelli di profondità.
- Non è possibile scaricare un report o un set di dati in formato .pbix dal servizio dopo la distribuzione con l'integrazione git.
- Se il nome visualizzato dell'elemento presenta una di queste caratteristiche, la cartella Git viene rinominata con l'ID logico (Guid) e il tipo:
- Ha più di 256 caratteri
- Termina con , o uno spazio
- Contiene tutti i caratteri non consentiti, come descritto in limitazioni del nome della directory
- Quando si connette un'area di lavoro con cartelle a Git, è necessario eseguire il commit delle modifiche al repository Git se tale struttura di cartelle è diversa.
Limitazioni dei nomi delle directory
Il nome della directory che si connette al repository Git presenta le restrizioni di denominazione seguenti:
- Il nome della directory non può iniziare o terminare con uno spazio o una scheda.
- Il nome della directory non può contenere i caratteri seguenti: "/:<>\*?|
La cartella dell'elemento (la cartella contenente i file di elemento) non può contenere i caratteri seguenti: ":<>\*?|. Se si rinomina la cartella in un elemento che include uno di questi caratteri, Git non può connettersi o sincronizzare con l'area di lavoro e si verifica un errore.
Limiti dell'espansione
- L'espansione richiede le autorizzazioni elencate nella tabella delle autorizzazioni.
- Per questa azione deve esserci una capacità disponibile.
- Tutte le limitazioni di denominazione dei rami e dell'area di lavoro si applicano quando si esegue la diramazione in una nuova area di lavoro.
- Nella nuova area di lavoro sono disponibili solo gli elementi supportati da Git.
- L'elenco dei rami correlati mostra solo rami e aree di lavoro per cui si dispone dell'autorizzazione per la visualizzazione.
- L'integrazione Git deve essere abilitata.
- Quando si esegue la diramazione, viene creato un nuovo ramo e le impostazioni del ramo originale non vengono copiate. Modificare le impostazioni o le definizioni per assicurarsi che il nuovo soddisfi i criteri dell'organizzazione.
- Quando si esegue la diramazione in un'area di lavoro esistente:
- L'area di lavoro di destinazione deve supportare una connessione Git.
- L'utente deve essere un amministratore dell'area di lavoro di destinazione.
- L'area di lavoro di destinazione deve avere capacità.
- L'area di lavoro non può avere applicazioni modello.
- Si noti che quando si esegue la diramazione in un'area di lavoro, tutti gli elementi che non vengono salvati in Git possono andare persi. È consigliabile eseguire il commit di tutti gli elementi che si desidera mantenere prima di creare un branch.
Limitazioni di sincronizzazione e commit
- È possibile eseguire la sincronizzazione in una sola direzione alla volta. Non è possibile eseguire il commit e l'aggiornamento contemporaneamente.
- Le etichette di riservatezza non sono supportate e l'esportazione di elementi con etichette di riservatezza potrebbe essere disabilitata. Per eseguire il commit di elementi con etichette di riservatezza senza l'etichetta di riservatezza, chiedere assistenza all'amministratore.
- Funziona con elementi limitati. Gli elementi non supportati nella cartella vengono ignorati.
- La duplicazione dei nomi non è consentita. Anche se Power BI consente la duplicazione dei nomi, l'azione di aggiornamento, commit o annullamento ha esito negativo.
- B2B non è supportato.
- La risoluzione del conflitto viene eseguita parzialmente in Git.
- Durante il processo Commit in Git, il servizio di Fabric elimina i file all'interno della cartella dell'elemento che non fanno parte della definizione dell'elemento. I file non correlati non presenti in una cartella di elementi non vengono eliminati.
- Dopo aver confermato le modifiche, potresti notare alcune variazioni inattese all'elemento che non hai apportato. Queste modifiche sono semanticamente insignificanti e possono verificarsi per diversi motivi. Ad esempio:
- Modificare manualmente il file di definizione dell'elemento. Queste modifiche sono valide, ma potrebbero essere diverse da quelle eseguite tramite gli editor. Ad esempio, se si rinomina una colonna del modello semantico in Git e si importa questa modifica nell'area di lavoro, al successivo commit delle modifiche apportate al modello semantico, il file bim verrà registrato come modificato e la colonna modificata verrà riportata alla fine della matrice
columns
. Questo perché il motore AS che genera i file bim sposta le colonne rinominate alla fine dell'array. Questa modifica non influisce sul funzionamento dell'elemento. - Effettuare il commit di un file che utilizza interruzioni di riga CRLF. Il servizio utilizza LF (line feed) per le interruzioni di riga. Se nel repository Git fossero presenti file di elementi con interruzioni di riga CRLF, quando si esegue il commit dal servizio questi file verrebbero modificati in LF. Ad esempio, se si apre un report sul desktop, salvare il file di progetto (pbip ) e caricarlo in Git usando CRLF.
- Modificare manualmente il file di definizione dell'elemento. Queste modifiche sono valide, ma potrebbero essere diverse da quelle eseguite tramite gli editor. Ad esempio, se si rinomina una colonna del modello semantico in Git e si importa questa modifica nell'area di lavoro, al successivo commit delle modifiche apportate al modello semantico, il file bim verrà registrato come modificato e la colonna modificata verrà riportata alla fine della matrice
- L'aggiornamento di un modello semantico tramite l'API Aggiornamento avanzato causa una differenza di Git dopo ogni aggiornamento.