Partilhar via


Git - Connect

Conecte um espaço de trabalho específico a um repositório git e ramificação.
Esta operação não sincroniza entre o espaço de trabalho e a ramificação conectada. Para concluir a sincronização, use a operação Inicializar conexão e siga com a operação Confirmar no Git ou Atualizar do Git .

Para começar a usar o GitHub, consulte: Introdução à integração com o Git.

Para obter o ID de conexão, consulte Automatizar a integração do Git.

Permissões

O chamador deve ter uma função de administrador para o espaço de trabalho.

Para credenciais Git de conexão configuradas, o chamador deve ter permissão para a conexão.

Escopos delegados necessários

Workspace.ReadWrite.All

Limitações

Ao usar a fonte de credenciais automática, essa API é bloqueada para o provedor GitHub e para a entidade de serviço.

Identidades suportadas pelo Microsoft Entra

Esta API suporta as identidades do Microsoft listadas nesta secção.

Identidade Apoio
Utilizador Sim
Entidade de serviço e identidades geridas Suportado apenas quando myGitCredentials.source é ConfiguredConnection

Interfaz

POST https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/git/connect

Parâmetros do URI

Name Em Necessário Tipo Description
workspaceId
path True

string (uuid)

O ID do espaço de trabalho.

Corpo do Pedido

Name Necessário Tipo Description
gitProviderDetails True GitProviderDetails:

Os detalhes do provedor Git.

myGitCredentials GitCredentials:

Credenciais Git específicas do usuário para autenticação no GitProvider. Essas credenciais não são compartilhadas com outros colaboradores do espaço de trabalho. Para o GitHub, essa propriedade é necessária. Para AzureDevOps, essa propriedade é opcional. Se não estiver definido, o padrão será AutomaticGitCredentials.

Respostas

Name Tipo Description
200 OK

Pedido concluído com sucesso.

Other Status Codes

ErrorResponse

Códigos de erro comuns:

  • UnknownError - Ocorreu um erro.

  • WorkspaceAlreadyConnectedToGit - O espaço de trabalho já está conectado ao git.

  • WorkspaceHasNoCapacityAssigned - Nenhuma capacidade atribuída ao espaço de trabalho.

  • InsufficientPrivileges - O chamador tem permissões de espaço de trabalho insuficientes.

  • PrincipalTypeNotSupported - O tipo de identidade do chamador não é suportado.

Exemplos

Connect a workspace to Azure DevOps example
Connect a workspace to Azure DevOps using configured connection example
Connect a workspace to GitHub example
Connect a workspace to GitHub example - GitHub Enterprise With Data Residency (ghe.com)

Connect a workspace to Azure DevOps example

Pedido de amostra

POST https://api.fabric.microsoft.com/v1/workspaces/1565e6a3-c020-4c0c-dda7-92bafe99eec5/git/connect

{
  "gitProviderDetails": {
    "organizationName": "Test Organization",
    "projectName": "Test Project",
    "gitProviderType": "AzureDevOps",
    "repositoryName": "Test Repo",
    "branchName": "Test Branch",
    "directoryName": "Test Directory"
  }
}

Resposta da amostra

Connect a workspace to Azure DevOps using configured connection example

Pedido de amostra

POST https://api.fabric.microsoft.com/v1/workspaces/1565e6a3-c020-4c0c-dda7-92bafe99eec5/git/connect

{
  "gitProviderDetails": {
    "organizationName": "Test Organization",
    "projectName": "Test Project",
    "gitProviderType": "AzureDevOps",
    "repositoryName": "Test Repo",
    "branchName": "Test Branch",
    "directoryName": "Test Directory/Test Subdirectory"
  },
  "myGitCredentials": {
    "source": "ConfiguredConnection",
    "connectionId": "3f2504e0-4f89-11d3-9a0c-0305e82c3301"
  }
}

Resposta da amostra

Connect a workspace to GitHub example

Pedido de amostra

POST https://api.fabric.microsoft.com/v1/workspaces/1565e6a3-c020-4c0c-dda7-92bafe99eec5/git/connect

{
  "gitProviderDetails": {
    "ownerName": "Test Owner",
    "gitProviderType": "GitHub",
    "repositoryName": "Test Repo",
    "branchName": "Test Branch",
    "directoryName": "Test Directory/Test Subdirectory"
  },
  "myGitCredentials": {
    "source": "ConfiguredConnection",
    "connectionId": "3f2504e0-4f89-11d3-9a0c-0305e82c3301"
  }
}

Resposta da amostra

Connect a workspace to GitHub example - GitHub Enterprise With Data Residency (ghe.com)

Pedido de amostra

POST https://api.fabric.microsoft.com/v1/workspaces/1565e6a3-c020-4c0c-dda7-92bafe99eec5/git/connect

{
  "gitProviderDetails": {
    "ownerName": "Test Owner",
    "customDomainName": "my-enterprise.ghe.com",
    "gitProviderType": "GitHub",
    "repositoryName": "Test Repo",
    "branchName": "Test Branch",
    "directoryName": "Test Directory/Test Subdirectory"
  },
  "myGitCredentials": {
    "source": "ConfiguredConnection",
    "connectionId": "3f2504e0-4f89-11d3-9a0c-0305e82c3301"
  }
}

Resposta da amostra

Definições

Name Description
AutomaticGitCredentials

Credenciais automáticas do Git.

AzureDevOpsDetails

Detalhes do provedor do Azure DevOps.

ConfiguredConnectionGitCredentials

Credenciais Git de conexão configuradas.

ErrorRelatedResource

O objeto de detalhes do recurso relacionado ao erro.

ErrorResponse

A resposta de erro.

ErrorResponseDetails

Os detalhes da resposta de erro.

GitConnectRequest

Contém os dados da solicitação de conexão do Git.

GitCredentialsSource

A fonte de credenciais do Git. Fontes adicionais de credenciais do Git podem ser adicionadas ao longo do tempo.

GitHubDetails

Detalhes do provedor GitHub.

GitProviderType

Um tipo de provedor Git. Tipos de provedores adicionais podem ser adicionados ao longo do tempo.

AutomaticGitCredentials

Credenciais automáticas do Git.

Name Tipo Description
source string:

Automatic

A fonte de credenciais do Git.

AzureDevOpsDetails

Detalhes do provedor do Azure DevOps.

Name Tipo Description
branchName

string

maxLength: 250

O nome da filial. O comprimento máximo é de 250 caracteres.

directoryName

string

maxLength: 256

O caminho relativo para o diretório. O comprimento máximo é de 256 caracteres.

gitProviderType string:

AzureDevOps

Um tipo de provedor Git. Tipos de provedores adicionais podem ser adicionados ao longo do tempo.

organizationName

string

maxLength: 100

O nome da organização. O comprimento máximo é de 100 caracteres.

projectName

string

maxLength: 100

O nome do projeto. O comprimento máximo é de 100 caracteres.

repositoryName

string

maxLength: 128

O nome do repositório. O comprimento máximo é de 128 caracteres.

ConfiguredConnectionGitCredentials

Credenciais Git de conexão configuradas.

Name Tipo Description
connectionId

string (uuid)

O ID do objeto da conexão.

source string:

ConfiguredConnection

A fonte de credenciais do Git.

ErrorRelatedResource

O objeto de detalhes do recurso relacionado ao erro.

Name Tipo Description
resourceId

string

A ID do recurso envolvida no erro.

resourceType

string

O tipo de recurso envolvido no erro.

ErrorResponse

A resposta de erro.

Name Tipo Description
errorCode

string

Um identificador específico que fornece informações sobre uma condição de erro, permitindo uma comunicação padronizada entre nosso serviço e seus usuários.

message

string

Uma representação legível por humanos do erro.

moreDetails

ErrorResponseDetails[]

Lista de detalhes de erro adicionais.

relatedResource

ErrorRelatedResource

Os detalhes do recurso relacionados ao erro.

requestId

string

ID da solicitação associada ao erro.

ErrorResponseDetails

Os detalhes da resposta de erro.

Name Tipo Description
errorCode

string

Um identificador específico que fornece informações sobre uma condição de erro, permitindo uma comunicação padronizada entre nosso serviço e seus usuários.

message

string

Uma representação legível por humanos do erro.

relatedResource

ErrorRelatedResource

Os detalhes do recurso relacionados ao erro.

GitConnectRequest

Contém os dados da solicitação de conexão do Git.

Name Tipo Description
gitProviderDetails GitProviderDetails:

Os detalhes do provedor Git.

myGitCredentials GitCredentials:

Credenciais Git específicas do usuário para autenticação no GitProvider. Essas credenciais não são compartilhadas com outros colaboradores do espaço de trabalho. Para o GitHub, essa propriedade é necessária. Para AzureDevOps, essa propriedade é opcional. Se não estiver definido, o padrão será AutomaticGitCredentials.

GitCredentialsSource

A fonte de credenciais do Git. Fontes adicionais de credenciais do Git podem ser adicionadas ao longo do tempo.

Valor Description
ConfiguredConnection

As credenciais do Git são obtidas por meio de uma conexão configurada.

Automatic

As credenciais do Git são obtidas automaticamente pelo sistema, usando credenciais padrão, se disponíveis.

None

As credenciais do Git não estão configuradas.

GitHubDetails

Detalhes do provedor GitHub.

Name Tipo Description
branchName

string

maxLength: 250

O nome da filial. O comprimento máximo é de 250 caracteres.

customDomainName

string

maxLength: 100

Observação

O suporte para GitHub Enterprise com residência de dados (ghe.com) está atualmente em Preview. (Saiba mais).

O nome do domínio empresarial no github, caso não seja github.com. Apenas o GitHub Enterprise com domínios de residência de dados (ghe.com) é suportado. O comprimento máximo é de 100 caracteres.

directoryName

string

maxLength: 256

O caminho relativo para o diretório. O comprimento máximo é de 256 caracteres.

gitProviderType string:

GitHub

Um tipo de provedor Git. Tipos de provedores adicionais podem ser adicionados ao longo do tempo.

ownerName

string

maxLength: 100

O nome do proprietário. O comprimento máximo é de 100 caracteres.

repositoryName

string

maxLength: 128

O nome do repositório. O comprimento máximo é de 128 caracteres.

GitProviderType

Um tipo de provedor Git. Tipos de provedores adicionais podem ser adicionados ao longo do tempo.

Valor Description
AzureDevOps

Provedor de DevOps do Azure

GitHub

Provedor GitHub