Refs - Update Refs
Crear, actualizar o eliminar refs(bifurcaciones).
Actualizar una referencia significa hacer que apunte a una confirmación diferente de la que usó. Debe especificar tanto la confirmación anterior como la nueva para evitar condiciones de carrera.
POST https://dev.azure.com/{organization}/{project}/_apis/git/repositories/{repositoryId}/refs?api-version=7.1-preview.1
POST https://dev.azure.com/{organization}/{project}/_apis/git/repositories/{repositoryId}/refs?projectId={projectId}&api-version=7.1-preview.1
Parámetros de identificador URI
Nombre | En | Requerido | Tipo | Description |
---|---|---|---|---|
organization
|
path | True |
string |
El nombre de la organización de Azure DevOps. |
repository
|
path | True |
string |
Nombre o identificador del repositorio. |
project
|
path |
string |
Id. de proyecto o nombre del proyecto |
|
api-version
|
query | True |
string |
Versión de la API que se va a usar. Debe establecerse en "7.1-preview.1" para usar esta versión de la API. |
project
|
query |
string |
Identificador o nombre del proyecto de equipo. Opcional si especifica un identificador para el repositorio. |
Cuerpo de la solicitud
Nombre | Tipo | Description |
---|---|---|
body |
Lista de actualizaciones de referencia para intentar realizar |
Respuestas
Nombre | Tipo | Description |
---|---|---|
200 OK |
operación correcta |
Seguridad
oauth2
Type:
oauth2
Flow:
accessCode
Authorization URL:
https://app.vssps.visualstudio.com/oauth2/authorize&response_type=Assertion
Token URL:
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
Scopes
Nombre | Description |
---|---|
vso.code_write | Concede la capacidad de leer, actualizar y eliminar código fuente, acceder a metadatos sobre confirmaciones, conjuntos de cambios, ramas y otros artefactos de control de versiones. También concede la capacidad de crear y administrar solicitudes de incorporación de cambios y revisiones de código y recibir notificaciones sobre eventos de control de versiones a través de enlaces de servicio. |
Ejemplos
Create/Update/Delete a ref by repositoryId
Sample Request
POST https://dev.azure.com/fabrikam/_apis/git/repositories/{repositoryId}/refs?api-version=7.1-preview.1
[
{
"name": "refs/heads/vsts-api-sample/answer-woman-flame",
"oldObjectId": "0000000000000000000000000000000000000000",
"newObjectId": "ffe9cba521f00d7f60e322845072238635edb451"
}
]
Sample Response
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
}
Definiciones
Nombre | Description |
---|---|
Git |
|
Git |
|
Git |
Estado de la actualización del servidor TFS. |
GitRefUpdate
Nombre | Tipo | Description |
---|---|---|
isLocked |
boolean |
|
name |
string |
|
newObjectId |
string |
|
oldObjectId |
string |
|
repositoryId |
string |
GitRefUpdateResult
Nombre | Tipo | Description |
---|---|---|
customMessage |
string |
Mensaje personalizado para el objeto de resultado Por ejemplo, Motivo de error. |
isLocked |
boolean |
Si la referencia está bloqueada o no |
name |
string |
Nombre de referencia |
newObjectId |
string |
Nuevo identificador de objeto |
oldObjectId |
string |
Id. de objeto antiguo |
rejectedBy |
string |
Nombre del complemento que rechazó la actualización. |
repositoryId |
string |
ID del repositorio |
success |
boolean |
True si la actualización de referencia se realizó correctamente; en caso contrario, false |
updateStatus |
Estado de la actualización del servidor TFS. |
GitRefUpdateStatus
Estado de la actualización del servidor TFS.
Nombre | Tipo | Description |
---|---|---|
createBranchPermissionRequired |
string |
No se pudo completar la solicitud de actualización de referencia porque el usuario carece del permiso para crear una rama |
createTagPermissionRequired |
string |
No se pudo completar la solicitud de actualización de referencia porque el usuario carece del permiso para crear una etiqueta. |
forcePushRequired |
string |
Indica que la solicitud de actualización ref no se pudo completar porque parte del grafo se desconectaría con este cambio y el autor de la llamada no tiene el permiso ForcePush en el repositorio. |
invalidRefName |
string |
Indica que no se pudo completar la solicitud de actualización ref porque el nombre ref presentado en la solicitud no era válido. |
locked |
string |
No se pudo completar la actualización ref porque otro usuario bloquea la referencia. |
manageNotePermissionRequired |
string |
No se pudo completar la solicitud de actualización de referencia porque el usuario carece de permisos de creación de notas necesarios para escribir esta nota. |
refNameConflict |
string |
No se pudo completar la actualización de referencia porque, en el modo sin distinción entre mayúsculas y minúsculas, el nombre de referencia entra en conflicto con un nombre ref existente con mayúsculas y minúsculas diferentes. |
rejectedByPlugin |
string |
No se pudo completar la actualización ref porque el complemento lo rechazó. |
rejectedByPolicy |
string |
No se pudo completar la actualización de referencia porque la directiva la rechazó. |
staleOldObjectId |
string |
Indica que no se pudo completar la solicitud de actualización de referencia porque el identificador de objeto antiguo presentado en la solicitud no era el identificador de objeto de la referencia cuando la base de datos intentó la actualización. El escenario más probable es que el autor de la llamada perdió una carrera para actualizar la referencia. |
succeeded |
string |
Indica que la solicitud de actualización ref se completó correctamente. |
succeededCorruptRef |
string |
Indica que la solicitud de actualización ref se completó correctamente, pero la referencia pasada estaba dañada; como en, el identificador de objeto anterior era incorrecto. Esto solo debe ocurrir durante las eliminaciones. |
succeededNonExistentRef |
string |
Indica que la solicitud de actualización ref se completó correctamente, pero la referencia no existe realmente, por lo que no se realizaron cambios. Esto solo debe ocurrir durante las eliminaciones. |
unprocessed |
string |
La solicitud no se procesó |
unresolvableToCommit |
string |
No se pudo completar la solicitud de actualización de referencia porque el nuevo identificador de objeto para la referencia no se pudo resolver en un objeto de confirmación (posiblemente a través de cualquier número de etiquetas). |
writePermissionRequired |
string |
No se pudo completar la solicitud de actualización de referencia porque el usuario carece de permisos de escritura necesarios para escribir esta referencia |