Partager via


Refs - Update Refs

Création, mise à jour ou suppression de refs(branches).

La mise à jour d’une référence signifie qu’elle pointe vers une validation différente de celle utilisée. Vous devez spécifier l’ancien et le nouveau commit pour éviter les conditions de concurrence.

POST https://dev.azure.com/{organization}/{project}/_apis/git/repositories/{repositoryId}/refs?api-version=7.1
POST https://dev.azure.com/{organization}/{project}/_apis/git/repositories/{repositoryId}/refs?projectId={projectId}&api-version=7.1

Paramètres URI

Nom Dans Obligatoire Type Description
organization
path True

string

Nom de l’organisation Azure DevOps.

repositoryId
path True

string

Nom ou ID du référentiel.

project
path

string

ID de projet ou nom du projet

api-version
query True

string

Version de l’API à utiliser. Cette valeur doit être définie sur « 7.1 » pour utiliser cette version de l’API.

projectId
query

string

ID ou nom du projet d’équipe. Facultatif si vous spécifiez un ID pour le référentiel.

Corps de la demande

Nom Type Description
body

GitRefUpdate[]

Liste des mises à jour ref à effectuer

Réponses

Nom Type Description
200 OK

GitRefUpdateResult[]

opération réussie

Sécurité

oauth2

Type: oauth2
Flux: accessCode
URL d’autorisation: https://app.vssps.visualstudio.com/oauth2/authorize&response_type=Assertion
URL du jeton: https://app.vssps.visualstudio.com/oauth2/token?client_assertion_type=urn:ietf:params:oauth:client-assertion-type:jwt-bearer&grant_type=urn:ietf:params:oauth:grant-type:jwt-bearer

Étendues

Nom Description
vso.code_write Accorde la possibilité de lire, de mettre à jour et de supprimer du code source, d’accéder aux métadonnées relatives aux validations, aux ensembles de modifications, aux branches et à d’autres artefacts de contrôle de version. Accorde également la possibilité de créer et de gérer des demandes de tirage et des révisions de code et de recevoir des notifications sur les événements de contrôle de version via des hooks de service.

Exemples

Create/Update/Delete a ref by repositoryId

Exemple de requête

POST https://dev.azure.com/fabrikam/_apis/git/repositories/{repositoryId}/refs?api-version=7.1

[
  {
    "name": "refs/heads/vsts-api-sample/answer-woman-flame",
    "oldObjectId": "0000000000000000000000000000000000000000",
    "newObjectId": "ffe9cba521f00d7f60e322845072238635edb451"
  }
]

Exemple de réponse

transfer-Encoding: chunked
{
  "value": [
    {
      "repositoryId": "d3d1760b-311c-4175-a726-20dfc6a7f885",
      "name": "refs/heads/vsts-api-sample/answer-woman-flame",
      "oldObjectId": "0000000000000000000000000000000000000000",
      "newObjectId": "ffe9cba521f00d7f60e322845072238635edb451",
      "isLocked": false,
      "updateStatus": "succeeded",
      "success": true
    }
  ],
  "count": 1
}

Définitions

Nom Description
GitRefUpdate
GitRefUpdateResult
GitRefUpdateStatus

État de la mise à jour à partir du serveur TFS.

GitRefUpdate

Nom Type Description
isLocked

boolean

name

string

newObjectId

string

oldObjectId

string

repositoryId

string (uuid)

GitRefUpdateResult

Nom Type Description
customMessage

string

Message personnalisé pour l’objet de résultat Par exemple, Raison de l’échec.

isLocked

boolean

Indique si la référence est verrouillée ou non

name

string

Nom ref

newObjectId

string

Nouvel ID d’objet

oldObjectId

string

ANCIEN ID d’objet

rejectedBy

string

Nom du plug-in qui a rejeté la mise à jour.

repositoryId

string (uuid)

ID de référentiel

success

boolean

True si la mise à jour ref a réussi, false sinon

updateStatus

GitRefUpdateStatus

État de la mise à jour à partir du serveur TFS.

GitRefUpdateStatus

État de la mise à jour à partir du serveur TFS.

Valeur Description
createBranchPermissionRequired

Impossible de terminer la demande de mise à jour ref, car l’utilisateur n’a pas l’autorisation de créer une branche

createTagPermissionRequired

Impossible de terminer la demande de mise à jour ref, car l’utilisateur n’a pas l’autorisation de créer une balise

forcePushRequired

Indique que la demande de mise à jour ref n’a pas pu être terminée, car une partie du graphique serait déconnectée par cette modification et que l’appelant n’a pas l’autorisation ForcePush sur le référentiel.

invalidRefName

Indique que la demande de mise à jour ref n’a pas pu être terminée, car le nom ref présenté dans la demande n’était pas valide.

locked

Impossible de terminer la mise à jour ref, car la référence est verrouillée par un autre utilisateur.

manageNotePermissionRequired

Impossible de terminer la demande de mise à jour ref, car l’utilisateur ne dispose pas des autorisations de création de note requises pour écrire cette note

refNameConflict

La mise à jour ref n’a pas pu être effectuée, car, en mode non sensible à la casse, le nom ref est en conflit avec un nom ref existant, autrement casé.

rejectedByPlugin

Impossible de terminer la mise à jour ref, car elle a été rejetée par le plug-in.

rejectedByPolicy

Impossible de terminer la mise à jour ref, car elle a été rejetée par la stratégie.

staleOldObjectId

Indique que la demande de mise à jour ref n’a pas pu être terminée, car l’ancien ID d’objet présenté dans la requête n’était pas l’ID d’objet de la référence lorsque la base de données a tenté la mise à jour. Le scénario le plus probable est que l’appelant a perdu une course pour mettre à jour la ref.

succeeded

Indique que la demande de mise à jour ref a été effectuée avec succès.

succeededCorruptRef

Indique que la demande de mise à jour ref a été effectuée correctement, mais que la référence transmise a été endommagée, comme dans le cas de l’ancien ID d’objet était incorrect. Cela ne doit se produire que pendant les suppressions.

succeededNonExistentRef

Indique que la demande de mise à jour ref a été effectuée correctement, mais que la référence n’existe pas réellement afin qu’aucune modification n’ait été apportée. Cela ne doit se produire que pendant les suppressions.

unprocessed

La demande n’a pas été traitée

unresolvableToCommit

Impossible de terminer la demande de mise à jour ref, car le nouvel ID d’objet pour la référence n’a pas pu être résolu en objet de validation (potentiellement via un nombre quelconque de balises)

writePermissionRequired

Impossible de terminer la demande de mise à jour ref, car l’utilisateur n’a pas d’autorisations d’écriture requises pour écrire cette ref