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. |
|
repository
|
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. |
|
project
|
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 |
Liste des mises à jour ref à effectuer |
Réponses
| Nom | Type | Description |
|---|---|---|
| 200 OK |
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 |
|---|---|
|
Git |
|
|
Git |
|
|
Git |
É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 |
É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 |