Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Este artigo explica os conceitos básicos do Git e o processo de integração do Git ao workspace do Microsoft Fabric.
Permissões
- O administrador da sua organização deve habilitar a integração do Git.
- O administrador do locatário precisa habilitar a exportação entre áreas geográficas se o workspace e repositório do Azure estiverem em duas regiões diferentes. Essa restrição não se aplica ao GitHub.
- As permissões que você tem no workspace e no Git, conforme listado nas próximas seções, determinam as ações que você pode executar.
Permissões necessárias do Git para ações populares
A lista abaixo mostra o que as diferentes funções do espaço de trabalho podem fazer, dependendo das permissões no repositório do Git:
- Administrador: pode executar qualquer operação no espaço de trabalho, limitado apenas pela sua função no Git.
- Membro/Contribuidor: uma vez conectado a um espaço de trabalho, um membro/contribuidor poderá fazer commit e atualizar alterações, dependendo da sua função no Git. Para ações relacionadas à conexão do espaço de trabalho (por exemplo, conectar, desconectar ou alternar ramificações) procure ajuda de um Administrador.
- Visualizador: não é possível executar nenhuma ação. O visualizador não pode ver nenhuma informação relacionada ao Git no workspace.
Permissões necessárias do Fabric para ações populares
Funções do espaço de trabalho
A tabela a seguir descreve as permissões necessárias no espaço de trabalho do Fabric para executar várias operações comuns:
Operação | Função do espaço de trabalho |
---|---|
Conectar o workspace ao repositório do Git | Administrador |
Sincronizar workspace com o repositório do Git | Administrador |
Desconectar o workspace do repositório do Git | Administrador |
Alternar o branch no workspace (ou qualquer alteração na configuração de conexão) | Administrador |
Ver detalhes de conexão do Git | Administrador, Membro, Colaborador |
Consulte o workspace “status do Git” | Administrador, Membro, Colaborador |
Atualizar a partir do Git | Todas as seguintes funções: Colaborador no workspace (permissão WRITE em todos os itens) Proprietário do item (se o comutador de locatário bloquear atualizações para não proprietários) BUILD nas dependências externas (quando aplicável) |
Confirmar alterações no workspace para o Git | Todas as seguintes funções: Colaborador no workspace (permissão WRITE em todos os itens) Proprietário do item (se o comutador de locatário bloquear atualizações para não proprietários) BUILD nas dependências externas (quando aplicável) |
Criar um novo branch do Git a partir do Fabric | Administrador |
Migrar para outro espaço de trabalho | Administrador, Membro, Colaborador |
Funções do Git
A tabela a seguir descreve as permissões necessárias do Git para executar várias operações comuns:
Operação | permissões do Git |
---|---|
Conectar o workspace ao repositório do Git | Leia=Permitir |
Sincronizar workspace com o repositório do Git | Leia=Permitir |
Desconectar o workspace do repositório do Git | Nenhuma permissão é necessária |
Alternar o branch no workspace (ou qualquer alteração na configuração de conexão) | Read=Allow (no repositório/diretório/branch de destino) |
Ver detalhes de conexão do Git | Leitura ou Nenhum |
Consulte o workspace “status do Git” | Leia=Permitir |
Atualizar a partir do Git | Leia=Permitir |
Confirmar alterações no workspace para o Git | Leia=Permitir Contribuir=Permitir A política de branch deve permitir o commit direto |
Criar um novo branch do Git a partir do Fabric | Função=Escrever Criar branch=Permitir |
Migrar para outro espaço de trabalho | Leia=Permitir Criar branch=Permitir |
Conectar e sincronizar
Somente um administrador de espaço de trabalho pode conectar um espaço de trabalho a um repositório do Git, mas, uma vez conectado, qualquer pessoa com permissões poderá trabalhar nele. Se você não for um administrador, peça ajuda ao seu administrador para fazer a conexão.
Quando você conecta um workspace ao Git, o Fabric sincroniza entre os dois locais para que eles tenham o mesmo conteúdo. Durante a sincronização inicial, se a área de trabalho ou a ramificação do Git estiver vazia enquanto a outra contém conteúdo, o conteúdo será copiado do local não vazio para o vazio. Se tanto o workspace quanto o branch do Git tiverem conteúdo, você deverá decidir qual direção a sincronização deve seguir.
- Se você confirmar seu workspace para o branch do Git, todo o conteúdo do workspace com suporte será exportado para o Git e substituirá o conteúdo do Git atual.
- Se você atualizar o espaço de trabalho com o conteúdo do Git, o conteúdo do espaço de trabalho será substituído e você perderá seus dados. Como uma ramificação do Git sempre pode ser restaurada para um estágio anterior, enquanto um espaço de trabalho não pode, se você escolher esta opção, você deverá confirmar.
Se você não selecionar qual conteúdo sincronizar, não poderá continuar trabalhando.
Pastas
Quando conectada e sincronizada, a estrutura do workspace é espelhada no repositório Git, incluindo a estrutura de pastas. Itens de workspace em pastas são exportados para pastas com o mesmo nome no repositório Git. Por outro lado, itens em pastas Git são importados para pastas com o mesmo nome no workspace.
Observação
Como a estrutura de pastas é retida, se o workspace tiver pastas e a pasta Git conectada ainda não tiver subpastas, elas serão consideradas diferentes. Você obtém um status de alterações não confirmadas no painel de controle do código-fonte e precisa confirmar as alterações no Git antes de atualizar o workspace. Se você atualizar primeiro, a estrutura de pastas do Git substituirá a estrutura de pastas do workspace. Para obter mais informações, consulte Alterações de pasta: manipulação segura.
- As pastas vazias não são copiadas para o Git. Quando você cria ou move itens para uma pasta, a pasta é criada no Git.
- As pastas vazias no Git são excluídas automaticamente.
- As pastas vazias no workspace não são excluídas automaticamente, mesmo que todos os itens sejam movidos para pastas diferentes.
- A estrutura de pastas é mantida em até 10 níveis de profundidade.
Manipulando alterações de pasta com segurança
Se o workspace tiver pastas e a pasta Git conectada ainda não tiver subpastas, elas serão consideradas diferentes porque a estrutura de pastas é diferente. Ao conectar um workspace que tem pastas no Git, você obtém um status de alterações não confirmadas no painel de controle do código-fonte e precisa confirmar as alterações no Git antes de atualizar o workspace.
Se você não puder fazer alterações diretamente no branch conectado, devido à política de branch ou permissões, recomendamos usar a opção Branch de Checkout :
- Checkout de um Novo branch: use o recurso de branch de check-out para criar uma ramificação com o estado atualizado do workspace do seu Fabric.
- Confirmar Alterações de Pasta: todas as alterações de pasta de workspace podem ser confirmadas no novo branch.
- Mesclar alterações: use sua solicitação de pull (PR) regular e os processos de mesclagem para integrar essas atualizações novamente ao branch original.
Conectar-se a um espaço de trabalho compartilhado
Caso tente se conectar a um espaço de trabalho que já está conectado ao Git, você poderá receber a seguinte mensagem:
Vá para a guia Contas no lado direito do painel de controle do código-fonte, escolha uma conta e conecte-se a ela.
Status do Git
Depois de se conectar, o workspace exibe uma coluna Status do Git que indica o estado de sincronização de cada item no workspace em relação aos itens no branch remoto.
Cada item tem um dos seguintes status:
-
Sincronizado (o item é o mesmo no workspace e no branch do Git)
-
Conflito (o item foi alterado no espaço de trabalho e no branch do Git)
-
Item sem suporte
-
Alterações não confirmadas no espaço de trabalho
-
Atualização necessária do Git
-
O item é idêntico em ambos os locais, mas precisa ser atualizado para a última confirmação
Informação de sincronização
Enquanto você estiver conectado, as seguintes informações serão exibidas na parte inferior da tela:
- Filial conectada
- Hora da última sincronização
- Link para o último commit com o qual o workspace está sincronizado
Painel de controle do código-fonte
Na parte superior da tela está o ícone Controle do código-fonte. Ele mostra o número de itens diferentes no workspace e no branch do Git. Quando são feitas alterações no espaço de trabalho ou no GIT branch, o número é atualizado. Quando o workspace é sincronizado com o branch do Git, o ícone Controle do código-fonte exibe um 0.
Selecione o ícone de controle do código-fonte para abrir o painel Controle do código-fonte.
O painel de controle do código-fonte tem três guias na lateral:
Confirmações e atualizações
Quando são feitas alterações no workspace ou no branch do Git, o ícone de controle do código-fonte mostra o número de itens diferentes. Selecione o ícone de controle do código-fonte para abrir o painel Controle do código-fonte.
O painel Fazer commit e atualizar possui duas seções.
Alterações mostra o número de itens que foram alterados no espaço de trabalho e precisam ser commitados no Git.
Atualizações mostra o número de itens que foram modificados no GIT branch e precisam ser atualizados no espaço de trabalho.
Em cada seção, os itens alterados são listados com um ícone que indica o status:
-
novo
-
modificado
-
excluído
-
conflito
O botão Atualizar na parte superior do painel atualiza a lista de alterações e atualizações.
Fazer commit
- Os itens no espaço de trabalho que foram alterados são listados na seção Alterações. Quando houver mais de um item alterado, você poderá selecionar quais itens serão confirmados no branch do Git.
- Se houver atualizações feitas no branch do Git, as confirmações serão desabilitadas até que você atualize seu workspace.
Atualizar
- Ao contrário de dazer commit e desfazer, o comando Atualizar sempre atualiza todo o branch e sincroniza com o commit mais recente. Você não pode selecionar itens específicos para atualizar.
- Se forem feitas alterações no workspace e no branch do Git no mesmo item, as atualizações serão desabilitadas até que o conflito seja resolvido.
Leia mais sobre como confirmar e atualizar. Leia mais sobre o processo de atualização e como resolver conflitos.
Ramificações
A guia Ramificações do painel de controle de versão permite gerenciar suas ramificações e executar ações relacionadas a elas. Ela tem duas seções principais:
Ações que você pode realizar na ramificação atual:
- Ramificar para outro workspace (colaborador e acima): cria um workspace ou alterna para um workspace existente com base na última confirmação para o workspace atual. Em seguida, ele se conecta ao _workspace_ e ao _branch_ de destino.
- Novo branch de checkout (precisa ser administrador do workspace): cria um branch com base na última confirmação sincronizada no workspace e altera a conexão do Git no workspace atual. Isso não altera o conteúdo do espaço de trabalho.
- Alternar o branch (deve ser administrador do workspace): sincroniza o workspace com outro branch novo ou existente e substitui todos os itens no workspace com o conteúdo do branch selecionado.
Branches relacionados.
A guia Branches também tem uma lista de espaços de trabalho relacionados que podem ser selecionados e alternados. Um espaço de trabalho relacionado é aquele com as mesmas propriedades de conexão que o branch atual, como a mesma organização, projeto, repositório e pasta do Git.
Esse recurso permite que você navegue até espaços de trabalho conectados a outras ramificações associadas ao contexto do seu trabalho atual, sem a necessidade de procurá-los em sua lista de espaços de trabalho do Fabric.
Para abrir o espaço de trabalho relevante, selecione o item na lista.
Para obter mais informações, consulte Limitações de ramificação.
Detalhes da conta
A guia Detalhes da conta mostra os detalhes da conta do GitHub à qual o usuário está conectado. Ela tem duas seções. A seção superior mostra o provedor Git e o nome da conta. A seção inferior mostra o repositório e a ramificação aos quais o espaço de trabalho está conectado. Atualmente, essa guia só está disponível para espaços de trabalho conectados ao GitHub.
Os detalhes da conta do GitHub incluem:
Detalhes da conta do Git
- Provedor
- Nome da conta
Repositório Git
Filial
Considerações e limitações
Limitações gerais da integração do Git
- O método de autenticação no Fabric deve ser pelo menos tão forte quanto o método de autenticação do Git. Por exemplo, se o Git exigir autenticação multifator, o Fabric também precisará exigir autenticação multifator.
- No momento, não há suporte para os conjuntos de dados do Power BI conectados ao Analysis Services.
- Se você usar uma identidade de workspace em um artefato e confirmá-la no Git, ela poderá ser atualizada (de volta para um workspace de malha) somente em um workspace conectado à mesma identidade. Tenha cuidado, pois isso também afeta recursos como ramificação para fora.
- Não há suporte para submódulos.
- Não há suporte para nuvens soberanas.
- A conta do Azure DevOps deve ser registrada para o mesmo usuário que está utilizando o workspace do Fabric.
- Não há suporte para o Azure DevOps caso a opção Habilitar validação da política de acesso condicional de IP esteja habilitada.
- O administrador de locatários deverá habilitar exportações entre áreas geográficas se o espaço de trabalho e o repositório do Git estiverem em duas regiões geográficas diferentes.
- Se a sua organização configurou o acesso condicional, garanta que o serviço do Power BI tenha as mesmas condições definidas para que a autenticação funcione conforme o esperado.
- O tamanho do commit é limitado a 125 MB.
Limitações do GitHub Enterprise
Não há suporte para algumas versões e configurações do GitHub Enterprise. Por exemplo:
- GitHub Enterprise Cloud com residência de dados (ghe.com)
- Não há suporte para o GitHub Enterprise Server com um domínio personalizado, mesmo que a instância esteja acessível publicamente
- Github Enterprise Server hospedado em uma rede privada
- Lista de IPs permitidos
Limitações do workspace
- Somente o administrador do espaço de trabalho pode gerenciar as conexões com o repositório do Git, como conectar, desconectar ou adicionar uma ramificação.
Uma vez conectado, qualquer pessoa com permissão pode trabalhar no espaço de trabalho. - Espaços de trabalho com aplicativos de modelo instalados não podem ser conectados ao Git.
- O MyWorkspace não pode se conectar a um provedor Git.
Limitações de branch e pasta
- O nome do branch pode ter, no máximo, 244 caracteres.
- O caminho completo de nomes de arquivo pode ter no máximo 250 caracteres. Os nomes mais longos falham.
- O arquivo pode ter no máximo 25 MB.
- A estrutura de pastas é mantida com até 10 níveis de profundidade.
- Não é recomendável baixar um relatório/conjunto de dados como .pbix do serviço depois de implantá-los com a integração do Git, pois os resultados não são confiáveis. É recomendável usar o PowerBI Desktop para baixar relatórios/conjuntos de dados como .pbix.
- Se o nome de exibição do item tiver qualquer uma dessas características, a pasta Git será renomeada para a ID lógica (Guid) e digite:
- Tem mais de 256 caracteres
- Termina com , ou um espaço
- Contém todos os caracteres proibidos, conforme descrito em limitações de nome de diretório
- Ao conectar um workspace que tenha pastas ao Git, você precisará confirmar alterações no repositório Git se essa estrutura de pastas for diferente.
Limitações de nome de diretório
O nome do diretório que se conecta ao repositório Git tem as seguintes restrições de nomenclatura:
- O nome do diretório não pode começar nem terminar com um espaço ou uma guia.
- O nome do diretório não pode conter nenhum dos seguintes caracteres: "/:<>\*?|
A pasta do item (a pasta que contém os arquivos de item) não pode conter nenhum dos seguintes caracteres: ":<>\*?|. Se você renomear a pasta para algo que inclua um desses caracteres, o Git não poderá se conectar ou sincronizar com o workspace e ocorrerá um erro.
Limitações de expansão
- A ramificação requer permissões listadas na tabela de permissões.
- É necessário haver uma capacidade disponível para essa ação.
- Todos os workspaces e limitações de nomenclatura do branch se aplicam ao fazer o branch em um novo workspace.
- Somente os itens com suporte do Git estão disponíveis no novo espaço de trabalho.
- A lista de ramificações relacionadas mostra apenas as ramificações e espaços de trabalho que você tem permissão para ver.
- A integração do Git deve estar habilitada.
- Ao ramificar para fora, um novo branch é criado e as configurações do branch original não são copiadas. Ajuste as configurações ou definições para garantir que o novo atenda às políticas da sua organização.
- Ao fazer o branch para um workspace existente:
- O workspace de destino deve dar suporte a uma conexão Git.
- O usuário deve ser um administrador do workspace de destino.
- O espaço de trabalho de destino deve ter capacidade suficiente.
- O espaço de trabalho não pode ter aplicativos modelo.
- Observe que quando você faz o branch em um workspace, todos os itens que não são salvos no Git podem ser perdidos. Recomendamos que você faça o commit todos os itens que deseja manter antes de fazer o branch.
Limitações de sincronização e confirmação
- Você só pode sincronizar em uma direção por vez. Você não pode confirmar e atualizar ao mesmo tempo.
- Não há suporte para rótulos de confidencialidade e a exportação de itens com rótulos de confidencialidade pode estar desabilitada. Para confirmar itens que têm rótulos de confidencialidade sem o rótulo de confidencialidade, peça ajuda ao administrador.
- Funciona com uma quantidade limitada de itens. Itens não compatíveis na pasta serão ignorados.
- Nomes duplicados não são permitidos. Mesmo se o Power BI permitir a duplicação de nomes, as ações de atualizar, confirmar ou desfazer falharão.
- Não há suporte para B2B.
- A resolução de conflitos é realizada parcialmente no Git.
- Durante o processo de Confirmar para o Git, o serviço do Fabric exclui todos os arquivos dentro da pasta do item que não fazem parte da definição do item. Arquivos não relacionados que não estejam em uma pasta de item não serão excluídos.
- Após confirmar as alterações, você poderá notar algumas mudanças inesperadas no item que não foram feitas por você. Essas alterações são semanticamente insignificantes e podem ocorrer por vários motivos. Por exemplo:
- Alteração manual do arquivo de definição do item. Essas alterações são válidas, mas podem ser diferentes daquelas feitas por meio dos editores. Por exemplo, se você renomear uma coluna do modelo semântico no Git e importar essa alteração para o espaço de trabalho, na próxima vez que confirmar as alterações no modelo semântico, o arquivo bim será registrado como alterado e a coluna modificada será enviada para o final da matriz
columns
. Isso ocorre porque o mecanismo AS que gera os arquivos bim envia as colunas renomeadas para o final da matriz. Essa alteração não afeta a forma como o item funciona. - Confirmações de um arquivo que utiliza as quebras de linha CRLF. O serviço usa as quebras de linha LF (alimentação de linha). Se você tiver arquivos de itens no repositório Git com quebras de linha CRLF, quando você fizer commit por meio do serviço, esses arquivos serão alterados para LF. Por exemplo, se você abrir um relatório na área de trabalho, salve o arquivo de projeto (.pbip) e carregue-o no Git usando CRLF.
- Alteração manual do arquivo de definição do item. Essas alterações são válidas, mas podem ser diferentes daquelas feitas por meio dos editores. Por exemplo, se você renomear uma coluna do modelo semântico no Git e importar essa alteração para o espaço de trabalho, na próxima vez que confirmar as alterações no modelo semântico, o arquivo bim será registrado como alterado e a coluna modificada será enviada para o final da matriz
- Atualização de um modelo semântico usando a Enhanced refresh API resulta em um "Git diff" após cada atualização.