Git - Commit To Git

Hiermee worden de wijzigingen doorgevoerd die in de werkruimte zijn aangebracht in de verbonden externe vertakking.
Deze API ondersteunt langlopende bewerkingen (LRO).

Als u deze API wilt gebruiken, moeten de Git-referenties van de aanroeper worden geconfigureerd met de API Mijn Git-referenties bijwerken . U kunt de API Mijn Git-referenties ophalen gebruiken om de configuratie van git-referenties te controleren.

U kunt ervoor kiezen om alle wijzigingen, specifieke items of specifieke bestanden binnen items door te voeren met behulp van de FileLevelSelective-modus. Als u de werkruimte voor de eerste keer wilt synchroniseren, gebruikt u deze API na de verbinding maken en initialiseren van verbindings-API's.

Machtigingen

De aanroeper moet een inzender hebben of een hogere werkruimterol.

Vereiste gedelegeerde bereiken

Workspace.GitCommit.All.

Door Microsoft Entra ondersteunde identiteiten

Deze API ondersteunt de Microsoft -identiteiten vermeld in deze sectie.

Identiteit Ondersteuning
Gebruiker Ja
serviceprincipal en beheerde identiteiten Alleen ondersteund wanneer alle items die betrokken zijn bij de bewerking, service-principals ondersteunen

gebruikersinterface

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

URI-parameters

Name In Vereist Type Description
workspaceId
path True

string (uuid)

De werkruimte-id.

Aanvraagbody

Name Vereist Type Description
mode True

CommitMode

De modus voor de doorvoerbewerking.

comment

string

maxLength: 300

Bellervrije opmerking voor deze doorvoering. De maximale lengte is 300 tekens. Als er geen opmerking wordt opgegeven door de beller, gebruikt u de standaardopmerking van de Git-provider.

items

ItemIdentifier[]

Specifieke items die moeten worden doorgevoerd. Dit is alleen relevant voor de modus Selectief doorvoeren. Wederzijds exclusief met itemsWithFileSelection. De items kunnen worden opgehaald uit de Git Status-API .

itemsWithFileSelection

ItemIdentifierWithFileSelection[]

Items met selectie per bestand voor de doorvoermodus FileLevelSelective. Wederzijds exclusief met items. Elke vermelding bevat een item en eventueel een lijst met bestandspaden die moeten worden doorgevoerd. Als selectedFiles null of leeg is voor een item, worden alle bestanden voor dat item doorgevoerd.

workspaceHead

string

Volledige SHA-hash waarmee de werkruimte wordt gesynchroniseerd. De hash kan worden opgehaald uit de Git-status-API .

Antwoorden

Name Type Description
200 OK

De aanvraag is voltooid.

202 Accepted

Aanvraag geaccepteerd, doorvoeren naar Git wordt uitgevoerd.

Kopteksten

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

ErrorResponse

De servicesnelheidslimiet is overschreden. De server retourneert een Retry-After header die in seconden aangeeft hoe lang de client moet wachten voordat extra aanvragen worden verzonden.

Kopteksten

Retry-After: integer

Other Status Codes

ErrorResponse

Veelvoorkomende foutcodes:

  • WorkspaceNotConnectedToGit - Werkruimte is niet verbonden met Git.

  • WorkspaceHasNoCapacityAssigned - Geen capaciteit die naar de werkruimte wordt gespereerd.

  • WorkspaceHeadMismatch- Hoofd in de aanvraag komt niet overeen met het hoofd in het systeem.

  • WorkspacePreviousOperationInProgress: de vorige bewerking wordt nog uitgevoerd.

  • InsufficientPrivileges : de aanroeper beschikt niet over voldoende werkruimtemachtigingen.

  • PrincipalTypeNotSupported - Identiteitstype beller wordt niet ondersteund.

Voorbeelden

Commit all to Git example
Commit file-level selective to Git example
Commit selective items to Git example

Commit all to Git example

Voorbeeldaanvraag

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

{
  "mode": "All",
  "workspaceHead": "eaa737b48cda41b37ffefac772ea48f6fed3eac4",
  "comment": "I'm committing all my changes."
}

Voorbeeldrespons

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

Commit file-level selective to Git example

Voorbeeldaanvraag

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

{
  "mode": "FileLevelSelective",
  "workspaceHead": "eaa737b48cda41b37ffefac772ea48f6fed3eac4",
  "comment": "Commit only the metadata change from MyNotebook",
  "itemsWithFileSelection": [
    {
      "objectId": "cfafbeb1-8037-4d0c-896e-28c4f2e65573",
      "selectedFiles": [
        "metadata.json"
      ]
    },
    {
      "objectId": "d5a2b3c4-1234-5678-abcd-ef0123456789",
      "selectedFiles": []
    }
  ]
}

Voorbeeldrespons

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

Commit selective items to Git example

Voorbeeldaanvraag

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

{
  "mode": "Selective",
  "workspaceHead": "eaa737b48cda41b37ffefac772ea48f6fed3eac4",
  "comment": "I'm committing specific changes.",
  "items": [
    {
      "logicalId": "111e8d7b-4a95-4c02-8ccd-6faef5ba1bd1",
      "objectId": "1153f3b4-dbb8-33c1-a84f-6ae4d776362d"
    },
    {
      "objectId": "7753f3b4-dbb8-44c1-a94f-6ae4d776369e"
    }
  ]
}

Voorbeeldrespons

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

Definities

Name Description
CommitMode

Modi voor de doorvoerbewerking. Er kunnen in de loop van de tijd extra modi worden toegevoegd.

CommitToGitRequest

Bevat de doorvoeraanvraag.

ErrorParameter

Een gestructureerde parameter die extra machineleesbare context biedt over een fout.

ErrorRelatedResource

Het foutgerelateerde resourcedetailsobject.

ErrorResponse

Het foutbericht.

ErrorResponseDetails

De details van het foutbericht.

ItemIdentifier

Bevat de item-id. Ten minste één van de eigenschappen moet worden gedefinieerd.

ItemIdentifierWithFileSelection

Bevat de item-id met optionele selectie op bestandsniveau voor doorvoerbewerkingen.

CommitMode

Modi voor de doorvoerbewerking. Er kunnen in de loop van de tijd extra modi worden toegevoegd.

Waarde Description
All

Alle niet-doorgevoerde wijzigingen doorvoeren. De aanroeper is niet vereist om de lijst met items op te geven die moeten worden doorgevoerd.

Selective

Voer een opgegeven lijst met items door die niet-doorgevoerde wijzigingen bevatten. Gebruik de items eigenschap om items op te geven.

FileLevelSelective

Opgegeven bestanden binnen opgegeven items doorvoeren. Gebruik de itemsWithFileSelection eigenschap om items en bestanden op te geven.

CommitToGitRequest

Bevat de doorvoeraanvraag.

Name Type Description
comment

string

maxLength: 300

Bellervrije opmerking voor deze doorvoering. De maximale lengte is 300 tekens. Als er geen opmerking wordt opgegeven door de beller, gebruikt u de standaardopmerking van de Git-provider.

items

ItemIdentifier[]

Specifieke items die moeten worden doorgevoerd. Dit is alleen relevant voor de modus Selectief doorvoeren. Wederzijds exclusief met itemsWithFileSelection. De items kunnen worden opgehaald uit de Git Status-API .

itemsWithFileSelection

ItemIdentifierWithFileSelection[]

Items met selectie per bestand voor de doorvoermodus FileLevelSelective. Wederzijds exclusief met items. Elke vermelding bevat een item en eventueel een lijst met bestandspaden die moeten worden doorgevoerd. Als selectedFiles null of leeg is voor een item, worden alle bestanden voor dat item doorgevoerd.

mode

CommitMode

De modus voor de doorvoerbewerking.

workspaceHead

string

Volledige SHA-hash waarmee de werkruimte wordt gesynchroniseerd. De hash kan worden opgehaald uit de Git-status-API .

ErrorParameter

Een gestructureerde parameter die extra machineleesbare context biedt over een fout.

Name Type Description
message

string

Een door mensen leesbare beschrijving van de betekenis van de parameter.

name

string

De parameter-id.

value

string

De waarde van de parameter.

ErrorRelatedResource

Het foutgerelateerde resourcedetailsobject.

Name Type Description
resourceId

string

De resource-id die betrokken is bij de fout.

resourceType

string

Het type resource dat betrokken is bij de fout.

ErrorResponse

Het foutbericht.

Name Type Description
errorCode

string

Een specifieke id die informatie biedt over een foutvoorwaarde, waardoor gestandaardiseerde communicatie tussen onze service en de gebruikers mogelijk is.

isRetriable

boolean

Wanneer waar, kan de aanvraag opnieuw worden geprobeerd. Gebruik de Retry-After antwoordheader om de vertraging te bepalen, indien beschikbaar.

message

string

Een leesbare weergave van de fout.

moreDetails

ErrorResponseDetails[]

Lijst met aanvullende foutdetails.

parameters

ErrorParameter[]

Gestructureerde parameters die extra machineleesbare context bieden over de fout.

relatedResource

ErrorRelatedResource

De foutgerelateerde resourcedetails.

requestId

string (uuid)

Id van de aanvraag die is gekoppeld aan de fout.

ErrorResponseDetails

De details van het foutbericht.

Name Type Description
errorCode

string

Een specifieke id die informatie biedt over een foutvoorwaarde, waardoor gestandaardiseerde communicatie tussen onze service en de gebruikers mogelijk is.

message

string

Een leesbare weergave van de fout.

parameters

ErrorParameter[]

Gestructureerde parameters die extra machineleesbare context bieden over de fout.

relatedResource

ErrorRelatedResource

De foutgerelateerde resourcedetails.

ItemIdentifier

Bevat de item-id. Ten minste één van de eigenschappen moet worden gedefinieerd.

Name Type Description
logicalId

string (uuid)

De logische id van het item. Wanneer de logische id niet beschikbaar is omdat het item nog niet is toegevoegd aan de werkruimte, kunt u de object-id gebruiken.

objectId

string (uuid)

De object-id van het item. Wanneer de object-id niet beschikbaar is omdat het item is verwijderd uit de werkruimte, kunt u de logische id gebruiken.

ItemIdentifierWithFileSelection

Bevat de item-id met optionele selectie op bestandsniveau voor doorvoerbewerkingen.

Name Type Description
logicalId

string (uuid)

De logische id van het item. Wanneer de logische id niet beschikbaar is omdat het item nog niet is toegevoegd aan de werkruimte, kunt u de object-id gebruiken.

objectId

string (uuid)

De object-id van het item. Wanneer de object-id niet beschikbaar is omdat het item is verwijderd uit de werkruimte, kunt u de logische id gebruiken.

selectedFiles

string[]

Bestandspaden die moeten worden doorgevoerd ten opzichte van de hoofdmap van het item. Paden gebruiken alleen slashes, geen voorloopslash, volledige bestandspaden (geen mappen of jokertekens), geen lege of alleen witruimtesegmenten en segmenten kunnen niet eindigen met een punt of volgspaties. Als er null of leeg is, worden alle bestanden voor dit item doorgevoerd.