Condividi tramite


Concetti di base nell'integrazione di Git

Questo articolo illustra i concetti di base di Git e il processo di integrazione di Git con l'area di lavoro di Microsoft Fabric.

Importante

Questa funzionalità è disponibile in anteprima.

Autorizzazioni

  • Per usare l'integrazione git, l'amministratore dell'organizzazione deve abilitarlo dall'amministratore dell'organizzazione.
  • Se l'area di lavoro e il repository si trovano in due aree diverse, l'amministratore del tenant deve abilitare l'esportazione tra aree geografiche.
  • Le azioni che è possibile eseguire in un'area di lavoro dipendono dalle autorizzazioni disponibili sia nell'area di lavoro che in Azure DevOps.

Autorizzazioni di Azure DevOps

L'elenco seguente illustra le diverse operazioni che i ruoli dell'area di lavoro possono eseguire in base alle autorizzazioni di Azure DevOps:

  • Amministratore: può eseguire qualsiasi operazione nell'area di lavoro, limitata solo dal ruolo Azure DevOps.
  • Membro/Collaboratore: dopo la connessione a un'area di lavoro, un membro/collaboratore può eseguire il commit e aggiornare le modifiche, a seconda del ruolo di Azure DevOps. Per le azioni correlate alla connessione all'area di lavoro (ad esempio, connettersi, disconnettere o cambiare rami) cercare assistenza da un amministratore.
  • Visualizzatore: non è possibile eseguire alcuna azione. Il visualizzatore non può visualizzare informazioni correlate a Git nell'area di lavoro.

Autorizzazioni necessarie per le operazioni comuni

Nella tabella seguente vengono descritte le autorizzazioni necessarie per eseguire varie operazioni comuni:

Operazione Ruolo area di lavoro Autorizzazioni Git
Connettere l'area di lavoro al repository Git Amministratore Read=Allow
Sincronizzare l'area di lavoro con il repository Git Amministratore Read=Allow
Disconnettere l'area di lavoro dal repository Git Amministratore Non sono necessarie autorizzazioni
Cambiare ramo nell'area di lavoro (o qualsiasi modifica nell'impostazione di connessione) Amministratore Read=Allow (nel repository di destinazione/directory/ramo)
Visualizzare i dettagli della connessione Git Admin, Member, Contributor Lettura o nessuna
Vedere "Stato Git" dell'area di lavoro Admin, Member, Contributor Read=Allow
Aggiornamento da Git Tutte le operazioni seguenti:

Collaboratore nell'area di lavoro (autorizzazione WRITE per tutti gli elementi)

Proprietario dell'elemento (se l'opzione del tenant blocca gli aggiornamenti per i non proprietari)

BUILD su dipendenze esterne (ove applicabile)
Read=Allow
Eseguire il commit delle modifiche dell'area di lavoro in Git Tutte le operazioni seguenti:

Collaboratore nell'area di lavoro (autorizzazione WRITE per tutti gli elementi)

Proprietario dell'elemento (se l'opzione del tenant blocca gli aggiornamenti per i non proprietari)

BUILD su dipendenze esterne (ove applicabile)
Read=Allow
Collaborazione=Consenti
I criteri di ramo devono consentire il commit diretto
Creare un nuovo ramo Git dall'interno di Fabric Amministratore Role=Write
Crea ramo=Consenti
Creare un ramo in una nuova area di lavoro Admin, Member, Contributor Read=Allow
Crea ramo=Consenti

Connettersi e sincronizzare

Solo un amministratore dell'area di lavoro può connettere un'area di lavoro a Azure Repos, ma una volta connessi, chiunque disponga delle autorizzazioni può funzionare nell'area di lavoro. Se non si è un amministratore, chiedere assistenza all'amministratore per la connessione.

Quando si connette un'area di lavoro a Git, Fabric esegue la sincronizzazione tra le due posizioni in modo che abbiano lo stesso contenuto. Durante questa sincronizzazione iniziale, se l'area di lavoro o il ramo Git è vuoto mentre l'altro contiene contenuto, il contenuto viene copiato dal percorso non vuoto a quello vuoto. Se l'area di lavoro e il ramo Git hanno contenuto, è necessario decidere quale direzione deve andare la sincronizzazione.

  • Se si esegue il commit dell'area di lavoro nel ramo Git, tutto il contenuto dell'area di lavoro supportato viene esportato in Git e sovrascrive il contenuto Git corrente.
  • Se si aggiorna l'area di lavoro con il contenuto Git, il contenuto dell'area di lavoro viene sovrascritto e si perde il contenuto dell'area di lavoro. Poiché un ramo Git può sempre essere ripristinato in una fase precedente, mentre un'area di lavoro non può, se si sceglie questa opzione, viene chiesto di confermare.

Screenshot della finestra di dialogo che chiede quale direzione sincronizzare se Git e l'area di lavoro hanno contenuto.

Se non si seleziona il contenuto da sincronizzare, non è possibile continuare a funzionare.

Screenshot di notifica che non è possibile continuare a funzionare fino a quando l'area di lavoro non viene sincronizzata.

Git status

Dopo la connessione, l'area di lavoro visualizza una colonna di stato Git che indica lo stato di sincronizzazione di ogni elemento nell'area di lavoro in relazione agli elementi nel ramo remoto.

Screenshot se gli elementi in un'area di lavoro hanno lo stato Git descritto.

Ogni elemento ha uno degli stati seguenti:

  • Sincronizzato (l'elemento è lo stesso nell'area di lavoro e nel ramo Git)
  • Conflitto (l'elemento è stato modificato sia nell'area di lavoro che nel ramo Git)
  • Elemento non supportato
  • Modifiche di cui non è stato eseguito il commit nell'area di lavoro
  • Aggiornamento obbligatorio da Git
  • L'elemento è identico in entrambe le posizioni, ma deve essere aggiornato all'ultimo commit

Informazioni di sincronizzazione

Se si è connessi, nella parte inferiore della schermata sono visualizzate le informazioni seguenti:

  • Ramo connesso
  • Ora dell'ultima sincronizzazione
  • Collegamento all'ultimo commit in cui è sincronizzata l'area di lavoro

Screenshot delle informazioni di sincronizzazione visualizzate nella parte inferiore della schermata quando si è connessi a Git.

Controllo del codice sorgente

Nella parte superiore della schermata è presente l'icona controllo del codice sorgente. Mostra il numero di elementi diversi nell'area di lavoro e nel ramo Git. Quando vengono apportate modifiche all'area di lavoro o al ramo Git, il numero viene aggiornato. Quando l'area di lavoro viene sincronizzata con il ramo Git, l'icona controllo del codice sorgente visualizza un valore 0.

Screenshot dell'icona del controllo del codice sorgente che mostra zero elementi modificati.

Selezionare l'icona Controllo del codice sorgente per aprire il pannello di controllo Del codice sorgente.

Il pannello di controllo Del codice sorgente ha due schede sul lato.

Commit e aggiornamenti

Quando vengono apportate modifiche all'area di lavoro o al ramo Git, l'icona del controllo del codice sorgente mostra il numero di elementi diversi. Selezionare l'icona del controllo del codice sorgente per aprire il pannello di controllo del codice sorgente.

Il pannello Commit e aggiornamento include due sezioni.

Le modifiche mostrano il numero di elementi modificati nell'area di lavoro ed è necessario eseguire il commit in Git.
Gli aggiornamenti mostrano il numero di elementi modificati nel ramo Git e devono essere aggiornati all'area di lavoro.

In ogni sezione gli elementi modificati sono elencati con un'icona che indica lo stato:

  • Nuovo
  • Volta
  • Eliminato
  • conflitto

Il pulsante Aggiorna nella parte superiore del pannello aggiorna l'elenco delle modifiche e degli aggiornamenti.

Screenshot del pannello di controllo del codice sorgente che mostra lo stato degli elementi modificati.

Commit

  • Gli elementi nell'area di lavoro modificati sono elencati nella sezione Modifiche . Quando sono presenti più elementi modificati, è possibile selezionare gli elementi di cui eseguire il commit nel ramo Git.
  • Se sono stati apportati aggiornamenti al ramo Git, i commit vengono disabilitati fino a quando non si aggiorna l'area di lavoro.

Aggiornamento

  • A differenza del commit e dell'annullamento, il comando Update aggiorna sempre l'intero ramo e sincronizza il commit più recente. Non è possibile selezionare elementi specifici da aggiornare.
  • Se sono state apportate modifiche nell'area di lavoro e nel ramo Git nello stesso elemento, gli aggiornamenti vengono disabilitati fino a quando il conflitto non viene risolto.

Altre informazioni su come eseguire il commit e l'aggiornamento. Altre informazioni sul processo di aggiornamento e su come risolvere i conflitti.

Rami

La scheda Rami del pannello di controllo del codice sorgente consente di gestire i rami ed eseguire azioni correlate ai rami. Ha due sezioni principali:

  • Azioni che è possibile eseguire nel ramo corrente:

    • Diramare in una nuova area di lavoro (qualsiasi ruolo): crea una nuova area di lavoro e un nuovo ramo in base all'ultimo commit del ramo connesso all'area di lavoro corrente. Si connette alla nuova area di lavoro e al nuovo ramo.
    • Estrazione di un nuovo ramo (deve essere amministratore dell'area di lavoro): crea un nuovo ramo in base all'ultimo commit sincronizzato nell'area di lavoro e modifica la connessione Git nell'area di lavoro corrente. Non modifica il contenuto dell'area di lavoro.

    Screenshot della scheda branch out nel pannello di controllo del codice sorgente.

  • Rami correlati.
    La scheda Rami include anche un elenco di aree di lavoro correlate a cui è possibile selezionare e passare. Un'area di lavoro correlata è una con le stesse proprietà di connessione di Current Branch, ad esempio la stessa organizzazione, progetto, repository e cartella Git.
    In questo modo è possibile passare alle aree di lavoro connesse ad altri rami correlati al contesto del lavoro corrente, senza doverli cercare nell'elenco di aree di lavoro di Fabric.
    Fare clic su un elemento nell'elenco per aprire l'area di lavoro pertinente.

    Screenshot che mostra un elenco di rami correlati a cui l'utente può passare.

Per altre informazioni, vedere Limitazioni di diramazione.

Considerazioni e limitazioni

Limitazioni generali

  • L'account Azure DevOps deve essere registrato allo stesso utente che usa l'area di lavoro Infrastruttura.
  • Il metodo di autenticazione in Power BI deve essere almeno sicuro come il metodo di autenticazione per Azure DevOps. Ad esempio, se Azure DevOps richiede l'autenticazione a più fattori, Power BI deve richiedere anche l'autenticazione a più fattori.
  • I set di dati di Power BI connessi ad Analysis Services non sono attualmente supportati.
  • L'aggiornamento di un modello semantico tramite l'API di aggiornamento avanzato causa un diff Git dopo ogni aggiornamento.
  • La struttura delle cartelle dell'area di lavoro non si riflette nel repository Git. Gli elementi dell'area di lavoro nelle cartelle vengono esportati nella directory radice.

Limitazioni dell'area di lavoro

  • Solo l'amministratore dell'area di lavoro può gestire le connessioni al repository di Azure, ad esempio la connessione, la disconnessione o l'aggiunta di un ramo.
    Dopo la connessione, chiunque disponga dell'autorizzazione può funzionare 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 di file è di 250 caratteri. I nomi più lunghi hanno esito negativo.

  • La dimensione massima del file è 25 MB.

  • Non è possibile scaricare un report o un set di dati come pbix dal servizio dopo la distribuzione con l'integrazione git.

  • Se il nome visualizzato dell'elemento:

    • Ha più di 256 caratteri
    • Termina con .' o uno spazio
    • Contiene uno dei caratteri seguenti: ", /, :, <, >\\, , *, ?|

    L'ID logico (Guid) viene aggiunto come prefisso prima del tipo, quando si denomina la cartella in Git.

Limitazioni di diramazione

  • Per la diramazione sono necessarie autorizzazioni elencate nella tabella delle autorizzazioni.
  • Per questa azione deve essere disponibile una capacità.
  • Tutte le limitazioni di denominazione dell'area di lavoro e dei rami si applicano quando si esegue la diramazione in una nuova area di lavoro.
  • Quando si esegue la diramazione, viene creata una nuova area di lavoro e le impostazioni dell'area di lavoro originale non vengono copiate. Modificare le impostazioni o le definizioni per assicurarsi che la nuova area di lavoro soddisfi i criteri dell'organizzazione.
  • 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.

Limitazioni di sincronizzazione e commit

  • Il limite di dimensioni per un commit è 125 MB.
  • È 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. Se gli elementi non supportati si trovano nella cartella, vengono ignorati.
  • La duplicazione dei nomi non è consentita, anche se Power BI lo consente, l'azione di aggiornamento, commit o annullamento ha esito negativo.
  • B2B non è supportato.
  • La risoluzione dei conflitti viene eseguita parzialmente in Git.