Git - Update From Git

Met à jour l’espace de travail avec des validations envoyées à la branche connectée.

Note

La prise en charge du plan de déploiement dans cette API fait partie d’une version bêta et est fournie uniquement à des fins d’évaluation et de développement. Il peut changer en fonction des commentaires et n’est pas recommandé pour une utilisation en production. Toutes les autres fonctionnalités de cette API sont généralement disponibles. Pour utiliser la prise en charge du plan de déploiement, les appelants doivent spécifier true comme valeur pour le paramètre betade requête.

Cette API prend en charge opérations longues (LRO).

Pour utiliser cette API, les informations d’identification Git de l’appelant doivent être configurées à l’aide de l’API Mettre à jour mes informations d’identification Git . Vous pouvez utiliser l’API Obtenir mes informations d’identification Git pour vérifier la configuration des informations d’identification Git.

La mise à jour affecte uniquement les éléments de l’espace de travail qui ont été modifiés dans ces validations. Si elle est appelée après les API Connexion et Initialiser la connexion , elle effectue une mise à jour complète de l’ensemble de l’espace de travail.

Autorisations

L’appelant doit avoir un contributeur ou un rôle d’espace de travail supérieur.

Étendues déléguées requises

Workspace.GitUpdate.All

Identités prises en charge par Microsoft Entra

Cette API prend en charge les identités Microsoft répertoriées dans cette section.

Identité Soutien
Utilisateur Oui
principal de service et identités managées Uniquement pris en charge lorsque tous les éléments impliqués dans l’opération prennent en charge les principaux de service

Interface

POST https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/git/updateFromGit
POST https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/git/updateFromGit?beta={beta}

Paramètres URI

Nom Dans Obligatoire Type Description
workspaceId
path True

string (uuid)

Identifiant de l’espace de travail.

beta
query

boolean

Définissez cette option pour true activer la fonctionnalité bêta, y compris la prise en charge du plan de déploiement. Lorsqu’elle est omise ou définie falsesur , seules les fonctionnalités généralement disponibles sont accessibles et l’entrée du plan de déploiement n’est pas acceptée.

Corps de la demande

Nom Obligatoire Type Description
remoteCommitHash True

string

Hachage de validation SHA complet distant.

conflictResolution

WorkspaceConflictResolution

Résolution de conflit à utiliser dans la mise à jour à partir de l’opération Git. Si les éléments sont en conflit et qu’une résolution de conflit n’est pas spécifiée, l’opération de mise à jour ne démarre pas.

options

UpdateOptions

Options à utiliser dans la mise à jour à partir de l’opération Git

workspaceHead

string

Hachage SHA complet auquel l’espace de travail est synchronisé. Cette valeur peut être null uniquement après l’initialisation de la connexion. Dans d’autres cas, le système vérifie que la valeur donnée est alignée sur la tête connue du système.

Réponses

Nom Type Description
200 OK

La demande s’est terminée avec succès.

202 Accepted

Demande acceptée, mise à jour de Git en cours.

En-têtes

  • Location: string
  • x-ms-operation-id: string
  • Retry-After: integer
429 Too Many Requests

ErrorResponse

La limite de débit de service a été dépassée. Le serveur retourne un Retry-After en-tête indiquant, en secondes, combien de temps le client doit attendre avant d’envoyer des demandes supplémentaires.

En-têtes

Retry-After: integer

Other Status Codes

ErrorResponse

Codes d’erreur courants :

  • WorkspaceNotConnectedToGit : l’espace de travail n’est pas connecté à Git.

  • WorkspaceHasNoCapacityAssigned : aucune capacité affectée à l’espace de travail.

  • WorkspaceHeadMismatch : la tête dans la requête ne correspond pas à la tête du système.

  • WorkspacePreviousOperationInProgress : l’opération précédente est toujours en cours.

  • MissingDependency : une dépendance est manquante dans l’opération de mise à jour.

  • PotentialDuplicateDisplayNameAndType : l’opération de mise à jour crée un nom d’affichage et un type d’affichage dupliqués.

  • DependencyDeletionFailed : l’opération de mise à jour supprime la dépendance matérielle.

  • InsufficientPrivileges : l’appelant ne dispose pas des autorisations d’espace de travail suffisantes.

  • PrincipalTypeNotSupported : le type d’identité de l’appelant n’est pas pris en charge.

Exemples

Update a workspace from Git with options example
Update a workspace using data from a Git example
Update a workspace using data from a Git with a deployment plan example

Update a workspace from Git with options example

Exemple de requête

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

{
  "workspaceHead": "eaa737b48cda41b37ffefac772ea48f6fed3eac4",
  "remoteCommitHash": "7d03b2918bf6aa62f96d0a4307293f3853201705",
  "conflictResolution": {
    "conflictResolutionType": "Workspace",
    "conflictResolutionPolicy": "PreferWorkspace"
  },
  "options": {
    "allowOverrideItems": true,
    "itemOptionsByLogicalId": [
      {
        "logicalId": "88436e65-6ed1-8185-49ff-f61077fc73d4",
        "options": {
          "validateOnly": true
        }
      }
    ]
  }
}

Exemple de réponse

Location: https://api.fabric.microsoft.com/v1/operations/431e8d7b-4a95-4c02-8ccd-6faef5ba1bd7
x-ms-operation-id: 431e8d7b-4a95-4c02-8ccd-6faef5ba1bd7
Retry-After: 30

Update a workspace using data from a Git example

Exemple de requête

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

{
  "workspaceHead": "eaa737b48cda41b37ffefac772ea48f6fed3eac4",
  "remoteCommitHash": "7d03b2918bf6aa62f96d0a4307293f3853201705",
  "conflictResolution": {
    "conflictResolutionType": "Workspace",
    "conflictResolutionPolicy": "PreferWorkspace"
  },
  "options": {
    "allowOverrideItems": true
  }
}

Exemple de réponse

Location: https://api.fabric.microsoft.com/v1/operations/431e8d7b-4a95-4c02-8ccd-6faef5ba1bd7
x-ms-operation-id: 431e8d7b-4a95-4c02-8ccd-6faef5ba1bd7
Retry-After: 30

Update a workspace using data from a Git with a deployment plan example

Exemple de requête

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

{
  "workspaceHead": "eaa737b48cda41b37ffefac772ea48f6fed3eac4",
  "remoteCommitHash": "7d03b2918bf6aa62f96d0a4307293f3853201705",
  "conflictResolution": {
    "conflictResolutionType": "Workspace",
    "conflictResolutionPolicy": "PreferWorkspace"
  },
  "options": {
    "allowOverrideItems": true,
    "deploymentPlan": {
      "referenceType": "ByLogicalId",
      "logicalId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
    }
  }
}

Exemple de réponse

Location: https://api.fabric.microsoft.com/v1/operations/431e8d7b-4a95-4c02-8ccd-6faef5ba1bd7
x-ms-operation-id: 431e8d7b-4a95-4c02-8ccd-6faef5ba1bd7
Retry-After: 30

Définitions

Nom Description
ConflictResolutionPolicy

Stratégie de résolution des conflits. Des stratégies de résolution de conflit supplémentaires peuvent être ajoutées au fil du temps.

ConflictResolutionType

Type de résolution de conflit. Des types de résolution de conflit supplémentaires peuvent être ajoutés au fil du temps.

DeploymentPlanReferenceByItemId

Référence de plan de déploiement par ID d’élément.

DeploymentPlanReferenceByLogicalId

Référence de plan de déploiement par ID logique.

DeploymentPlanReferenceType

Type de référence du plan de déploiement. Des types DeploymentPlanReferenceType supplémentaires peuvent être ajoutés au fil du temps.

ErrorParameter

Paramètre structuré fournissant un contexte lisible par l’ordinateur supplémentaire à propos d’une erreur.

ErrorRelatedResource

Objet de détails de ressource associé à l’erreur.

ErrorResponse

Réponse d’erreur.

ErrorResponseDetails

Détails de la réponse d’erreur.

ItemOptionsByLogicalIdEntry

Entrée d’options par élément qui cible son élément par ID logique. Chaque élément ciblé peut apparaître au maximum une fois.

UpdateFromGitRequest

Contient la mise à jour à partir des données de requête Git.

UpdateOptions

Contient les options activées pour la mise à jour à partir de Git.

WorkspaceConflictResolution

Données de résolution de conflit de base.

ConflictResolutionPolicy

Stratégie de résolution des conflits. Des stratégies de résolution de conflit supplémentaires peuvent être ajoutées au fil du temps.

Valeur Description
PreferRemote

Préférez le contenu côté Git distant.

PreferWorkspace

Préférer le contenu côté espace de travail.

ConflictResolutionType

Type de résolution de conflit. Des types de résolution de conflit supplémentaires peuvent être ajoutés au fil du temps.

Valeur Description
Workspace

Résolution des conflits représentant le niveau de l’espace de travail.

DeploymentPlanReferenceByItemId

Référence de plan de déploiement par ID d’élément.

Nom Type Description
itemId

string (uuid)

ID d’élément de l’élément de plan de déploiement.

referenceType string:

ByItemId

Type de référence du plan de déploiement.

DeploymentPlanReferenceByLogicalId

Référence de plan de déploiement par ID logique.

Nom Type Description
logicalId

string (uuid)

ID logique de l’élément de plan de déploiement.

referenceType string:

ByLogicalId

Type de référence du plan de déploiement.

DeploymentPlanReferenceType

Type de référence du plan de déploiement. Des types DeploymentPlanReferenceType supplémentaires peuvent être ajoutés au fil du temps.

Valeur Description
ByItemId

Le plan de déploiement est référencé par son ID d’élément.

ByLogicalId

Le plan de déploiement est référencé par son ID logique.

ErrorParameter

Paramètre structuré fournissant un contexte lisible par l’ordinateur supplémentaire à propos d’une erreur.

Nom Type Description
message

string

Description lisible par l’homme de la signification du paramètre.

name

string

L’identifiant de paramètre.

value

string

Représente la valeur du paramètre.

ErrorRelatedResource

Objet de détails de ressource associé à l’erreur.

Nom Type Description
resourceId

string

ID de ressource impliqué dans l’erreur.

resourceType

string

Type de la ressource impliquée dans l’erreur.

ErrorResponse

Réponse d’erreur.

Nom Type Description
errorCode

string

Identificateur spécifique qui fournit des informations sur une condition d’erreur, ce qui permet une communication standardisée entre notre service et ses utilisateurs.

isRetriable

boolean

Lorsque la valeur est true, la requête peut être retentée. Utilisez l’en-tête Retry-After de réponse pour déterminer le délai, le cas échéant.

message

string

Représentation lisible humaine de l’erreur.

moreDetails

ErrorResponseDetails[]

Liste des détails d’erreur supplémentaires.

parameters

ErrorParameter[]

Paramètres structurés fournissant un contexte lisible par l’ordinateur supplémentaire sur l’erreur.

relatedResource

ErrorRelatedResource

Détails de la ressource associée à l’erreur.

requestId

string (uuid)

ID de la demande associée à l’erreur.

ErrorResponseDetails

Détails de la réponse d’erreur.

Nom Type Description
errorCode

string

Identificateur spécifique qui fournit des informations sur une condition d’erreur, ce qui permet une communication standardisée entre notre service et ses utilisateurs.

message

string

Représentation lisible humaine de l’erreur.

parameters

ErrorParameter[]

Paramètres structurés fournissant un contexte lisible par l’ordinateur supplémentaire sur l’erreur.

relatedResource

ErrorRelatedResource

Détails de la ressource associée à l’erreur.

ItemOptionsByLogicalIdEntry

Entrée d’options par élément qui cible son élément par ID logique. Chaque élément ciblé peut apparaître au maximum une fois.

Nom Type Description
logicalId

string (uuid)

ID logique de l’élément cible.

options

object

Options de l’élément ciblé. Les noms de propriétés sont des noms d’options valides pour le type d’élément ; les valeurs d’option sont les valeurs d’option. Pour connaître les options prises en charge par un type d’élément spécifique, consultez la documentation de l’API du Update-Definition type d’élément.

UpdateFromGitRequest

Contient la mise à jour à partir des données de requête Git.

Nom Type Description
conflictResolution

WorkspaceConflictResolution

Résolution de conflit à utiliser dans la mise à jour à partir de l’opération Git. Si les éléments sont en conflit et qu’une résolution de conflit n’est pas spécifiée, l’opération de mise à jour ne démarre pas.

options

UpdateOptions

Options à utiliser dans la mise à jour à partir de l’opération Git

remoteCommitHash

string

Hachage de validation SHA complet distant.

workspaceHead

string

Hachage SHA complet auquel l’espace de travail est synchronisé. Cette valeur peut être null uniquement après l’initialisation de la connexion. Dans d’autres cas, le système vérifie que la valeur donnée est alignée sur la tête connue du système.

UpdateOptions

Contient les options activées pour la mise à jour à partir de Git.

Nom Type Description
allowOverrideItems

boolean

Consentement de l’utilisateur pour remplacer les éléments entrants pendant la mise à jour à partir du processus Git. Lorsque les éléments entrants sont présents et que les éléments de remplacement autorisés ne sont pas spécifiés ou sont fournis comme faux, l’opération de mise à jour ne démarre pas. La valeur par défaut est False.

deploymentPlan DeploymentPlanReference:

Référence à un élément de plan de déploiement pour orchestrer le déploiement. Lorsqu’il est fourni, le plan contrôle l’ordre de déploiement des éléments et exécute des actions de pré/post-déploiement. Lorsqu’elle est absente ou null, l’opération se comporte comme aujourd’hui. Actuellement, seul le ByLogicalId type de référence est pris en charge. La prise en charge du plan de déploiement est actuellement en version bêta. Cette propriété ne peut être utilisée que lorsque le paramètre beta de requête est défini true et peut changer en fonction des commentaires.

itemOptionsByLogicalId

ItemOptionsByLogicalIdEntry[]

Options de mise à jour par élément. Chaque entrée cible son élément par ID logique et applique ses options à cet élément.

WorkspaceConflictResolution

Données de résolution de conflit de base.

Nom Type Description
conflictResolutionPolicy

ConflictResolutionPolicy

Stratégie de résolution des conflits. Des stratégies de résolution de conflit supplémentaires peuvent être ajoutées au fil du temps.

conflictResolutionType

ConflictResolutionType

Type de résolution de conflit. Des types de résolution de conflit supplémentaires peuvent être ajoutés au fil du temps.