Visão geral da integração do Git em Power Platform

A integração de controlo de versões permite que as equipas de desenvolvimento sincronizem soluções e objetos de solução em um ou mais ambientes Microsoft Dataverse, utilizando um fornecedor Git suportado, como Azure DevOps ou GitHub. As experiências das soluções fornecem nativamente a funcionalidade de integração com o controlo de código-fonte, para que programadores cidadãos, programadores que privilegiam o código e administradores possam beneficiar do controlo de versões, do acompanhamento de alterações e de uma colaboração fluida em equipa entre diferentes ferramentas e ambientes. Usa integração com Git com ambientes de desenvolvimento, não nos teus ambientes de teste ou produção. Utilize versões de compilação para criar artefactos de solução e pipelines no Power Platform para implementar.

Este artigo explica alguns dos conceitos-chave e benefícios de usar controlo de versões habilitado pelo Git nos seus ambientes e soluções Dataverse. Para informações sobre Git no Azure DevOps, consulte o repositório Azure DevOps Git. Para informações sobre repositórios do GitHub, veja Sobre repositórios.

Os criadores nos seus ambientes podem fazer alterações numa solução não gerida e comprometer-se com o Git antes de implementar com pipelines

ALM no Power Platform e no Dataverse

Power Platform fornece muitos recursos padrão que permitem que as organizações façam a gestão do ciclo de vida de aplicações (ALM) para as suas soluções. Estão incluídas a capacidade de empacotar soluções como contêineres para os muitos tipos diferentes de objetos na plataforma, gerenciar ambientes envolvidos no ciclo de vida do aplicativo e implantar soluções usando pipelines Power Platform. Há também várias maneiras de integrar repositórios do Git com o Power Platform utilizando ferramentas de programação. Com a integração nativa do Git no Dataverse, o processo é simplificado e agilizado para que os criadores trabalhem com as suas soluções de forma familiar e interajam com o controlo de código fonte através de interfaces simplificadas no Power Apps (make.powerapps.com).

Benefícios

  • Controlo de código fonte como fonte de verdade: em algumas organizações, a fonte de verdade para as implementações no Dataverse são os ambientes de criador nos quais as soluções são criadas. O principal motivo para este comportamento é que a integração do Git não nativa utiliza técnicas e ferramentas avançadas, que exigem conhecimentos profissionais de TI para começar a utilizá-la. Com a integração nativa do Git no Dataverse, o controlo de código fonte pode ser ativado em apenas alguns passos e fornece uma interface familiar para os criadores trabalharem com as suas soluções.
  • Segurança, auditoria e conformidade usando as melhores práticas de SDLC: As melhores práticas do ciclo de vida de desenvolvimento de software (SDLC) são um conjunto de diretrizes e processos que ajudam a gerir os seus projetos de desenvolvimento de software de forma eficaz. Ao utilizar a integração do Git no Dataverse, segue as práticas SDLC, como o controlo de versões, revisões de código e análise estática de código fonte para garantir a qualidade, fiabilidade e segurança das suas soluções. A integração do Git no Dataverse também fornece funcionalidades como auditoria, conformidade e rastreabilidade que o ajudam a acompanhar as alterações nas suas soluções e a colaborar eficazmente com outros membros da equipa.
  • Ambientes de desenvolvimento de curta duração: ao armazenar uma cópia das personalizações e configurações dos seus ambientes no controlo de código fonte, pode reidratar ambientes de desenvolvimento do controlo de código fonte de forma rápida e fácil no Dataverse. Isso permite que crie ambientes de curta duração para fins de desenvolvimento e teste. Os ambientes de curta duração permitem libertar armazenamento, experimentar novas funcionalidades, testar e iterar as suas soluções sem depender de ambientes permanentes.
  • Equipas de desenvolvimento de fusão: As equipas de desenvolvimento de fusão são equipas que consistem em programadores e criadores que trabalham juntos para criar soluções. Ao utilizar a integração do Git no Dataverse, estes utilizadores podem construir de forma independente em ambientes separados e colaborar com outros sincronizando com um repositório de controlo de código fonte comum. A integração do controlo de código fonte permite-lhe utilizar as competências e o conhecimento dos programadores e criadores para criar soluções de alta qualidade que satisfaçam as necessidades da sua organização.
  • Proteção: Usar o controlo de código-fonte como a fonte da verdade para as suas soluções permite que se recupere de alterações não intencionais nas suas soluções de forma rápida e fácil. Ao armazenar as suas soluções no controlo de código-fonte, pode restaurar para um estado ou versão anterior.

Principais conceitos

Soluções não geridas versus soluções geridas

Quando utiliza a integração do Git com o Dataverse, as soluções armazenadas no controlo de versões provêm de soluções não geridas num ambiente de criador. As soluções não gerenciadas permitem que os criadores adicionem, removam e atualizem objetos que são sincronizados com o controle do código-fonte quando você confirma e envia alterações. As soluções geridas são criadas a partir do controlo de código fonte e implementadas em ambientes a jusante, como teste ou produção, e não são editáveis nestes ambientes. As soluções geridas são utilizadas para garantir que a fonte da verdade para as suas soluções é sempre o controlo de código fonte e que as alterações são feitas apenas no ambiente do criador antes de serem adicionadas ao controlo de código fonte e implementadas noutro local.

Formatação de arquivo para objetos de solução

Com a introdução da integração Dataverse do Git, há mudanças na maneira como as soluções e os objetos de solução são representados no controle do código-fonte. Quando você confirma e envia alterações para o controle do código-fonte, os objetos da solução são armazenados em um formato específico que é compatível com o Git. Esse formato é usado para representar os objetos de solução de uma maneira fácil de ler e entender e pode ser usado para controlar as alterações nos objetos de solução ao longo do tempo. O formato de arquivo para objetos de solução foi projetado para ser legível por humanos e pode ser usado para exibir alterações nos objetos de solução no controle do código-fonte. Além disso, para permitir que várias soluções sejam armazenadas no mesmo repositório e pasta, os objetos de solução no controle do código-fonte não são mais duplicados para cada solução. Em vez disso, os objetos de solução são armazenados em um único local e podem ser compartilhados entre várias soluções no mesmo repositório e pasta.

Desenvolvimento com base no código com Git

O desenvolvimento com abordagem code-first no Power Platform é possibilitado através de ferramentas de desenvolvimento como a CLI do Power Platform, o Visual Studio e as extensões do Visual Studio Code. Envolver desenvolvedores centrados no código no processo de desenvolvimento de soluções é difícil sem a integração com o controlo de código-fonte, uma vez que objetos como os controlos da estrutura de componentes do Power Apps e os suplementos do Dataverse são implementados em soluções como recursos empacotados criados a partir de código-fonte e não podem ser editados diretamente no Power Apps (make.powerapps.com). Sem o controle do código-fonte como parte do processo de desenvolvimento para objetos low-code e code-first, é difícil gerenciar alterações na solução e garantir que as alterações sejam rastreadas e implantadas de maneira controlada.

Ao ativar a integração com o Git no Dataverse, pode ir ao encontro dos desenvolvedores code-first no seu ambiente de trabalho e proporcionar uma experiência fluida tanto para os desenvolvedores low-code como para os desenvolvedores code-first. No entanto, há algumas considerações a ter em conta ao gerir objetos definidos por código num ambiente low-code.

Desenvolvimento Fusion com integração do Git no Dataverse

A Power Platform oferece capacidades para abordagens de desenvolvimento tanto low-code como code-first. Este artigo aborda os processos de desenvolvimento code-first associados ao Dataverse e à integração com o Git e fornece orientações sobre como gerir objetos code-first e low-code num único ambiente. Objetos como controlos da estrutura de componentes do Power Apps, plug-ins do Dataverse e atividades de fluxo de trabalho personalizadas são exemplos de objetos de código primeiro que podem ser geridos no controlo de código-fonte.

Objetos code-first e low-code num único ambiente

Os objetos Code-first podem ser incluídos em soluções por meio de um processo de compilação que gera uma solução gerenciada ou não gerenciada que pode ser importada para um Dataverse ambiente. No entanto, os objetos code-first também podem ser implantados diretamente em uma solução não gerenciada em um ambiente maker, uma vez criados, sem empregar o processo de compilação da solução para implantá-los. Também é preciso ter em conta o processo de compilação, tendo em conta esta flexibilidade.

Se estiver a implementar objetos definidos no código diretamente numa solução não gerida num ambiente de criador, quando esses objetos forem confirmados no controlo de código-fonte, apenas a respetiva versão compilada será armazenada no controlo de código-fonte. Por exemplo, a DLL binária de um plug-in, ou o pacote JavaScript transpilado e otimizado para um controlo da estrutura de componentes do Power Apps. Como resultado, você acaba com duas cópias do objeto no controle do código-fonte — uma representada pela versão construída e outra representada pelo código-fonte. Armazenar binários em seu repositório pode levar a confusão e possíveis conflitos se o código-fonte e a versão construída não forem mantidos em sincronia. Essa prática não é recomendada porque o código-fonte deve ser a única fonte de verdade para o objeto e apenas uma única cópia deve ser armazenada.

A abordagem recomendada é criar objetos code-first como parte de um processo de compilação de solução e importar a solução não gerenciada gerada para o ambiente maker. Essa abordagem garante que o código-fonte e a versão construída sejam mantidos em sincronia e que o código-fonte seja a única fonte de verdade para o objeto. No entanto, essa abordagem requer que tenha um processo de compilação para gerar a solução gerida ou não gerida para uso no processo de importação e implementação. Pode, por exemplo, criar pipelines do Azure ou fluxos de trabalho do GitHub que criem artefactos destinados aos pipelines no Power Platform e para serem utilizados pelos processos de sincronização com o Git.

Próximos passos