Compartir a través de


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.

repositoryId
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.

projectId
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

GitRefUpdate[]

Lista de actualizaciones de referencia para intentar realizar

Respuestas

Nombre Tipo Description
200 OK

GitRefUpdateResult[]

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
GitRefUpdate
GitRefUpdateResult
GitRefUpdateStatus

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

GitRefUpdateStatus

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