Refs - Update Refs
Creazione, aggiornamento o eliminazione di refs(branch).
L'aggiornamento di un riferimento indica che punta a un commit diverso da quello usato. È necessario specificare sia il vecchio che il nuovo commit per evitare condizioni di gara.
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
Parametri dell'URI
Nome | In | Necessario | Tipo | Descrizione |
---|---|---|---|---|
organization
|
path | True |
string |
Nome dell'organizzazione di Azure DevOps. |
repository
|
path | True |
string |
Nome o ID del repository. |
project
|
path |
string |
ID progetto o nome progetto |
|
api-version
|
query | True |
string |
Versione dell'API da usare. Questa opzione deve essere impostata su '7.1-preview.1' per usare questa versione dell'API. |
project
|
query |
string |
ID o nome del progetto team. Facoltativo se si specifica un ID per il repository. |
Corpo della richiesta
Nome | Tipo | Descrizione |
---|---|---|
body |
Elenco degli aggiornamenti di riferimento per tentare di eseguire |
Risposte
Nome | Tipo | Descrizione |
---|---|---|
200 OK |
operazione riuscita |
Sicurezza
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
Nome | Descrizione |
---|---|
vso.code_write | Concede la possibilità di leggere, aggiornare ed eliminare codice sorgente, accedere ai metadati relativi ai commit, ai set di modifiche, ai rami e ad altri artefatti del controllo della versione. Concede inoltre la possibilità di creare e gestire richieste pull e revisioni del codice e di ricevere notifiche sugli eventi di controllo della versione tramite gli hook del servizio. |
Esempio
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
}
Definizioni
Nome | Descrizione |
---|---|
Git |
|
Git |
|
Git |
Stato dell'aggiornamento dal server TFS. |
GitRefUpdate
Nome | Tipo | Descrizione |
---|---|---|
isLocked |
boolean |
|
name |
string |
|
newObjectId |
string |
|
oldObjectId |
string |
|
repositoryId |
string |
GitRefUpdateResult
Nome | Tipo | Descrizione |
---|---|---|
customMessage |
string |
Messaggio personalizzato per l'oggetto risultato Per esempio, Motivo dell'errore. |
isLocked |
boolean |
Se il riferimento è bloccato o meno |
name |
string |
Nome riferimento |
newObjectId |
string |
NUOVO ID oggetto |
oldObjectId |
string |
ID oggetto precedente |
rejectedBy |
string |
Nome del plug-in che ha rifiutato l'aggiornamento. |
repositoryId |
string |
Repository ID |
success |
boolean |
True se l'aggiornamento ref ha avuto esito positivo, false in caso contrario, false |
updateStatus |
Stato dell'aggiornamento dal server TFS. |
GitRefUpdateStatus
Stato dell'aggiornamento dal server TFS.
Nome | Tipo | Descrizione |
---|---|---|
createBranchPermissionRequired |
string |
Impossibile completare la richiesta di aggiornamento ref perché l'utente non ha l'autorizzazione per creare un ramo |
createTagPermissionRequired |
string |
Impossibile completare la richiesta di aggiornamento ref perché l'utente non ha l'autorizzazione per creare un tag |
forcePushRequired |
string |
Indica che non è stato possibile completare la richiesta di aggiornamento di riferimento perché la parte del grafico verrà disconnessa da questa modifica e il chiamante non dispone dell'autorizzazione ForcePush nel repository. |
invalidRefName |
string |
Indica che non è stato possibile completare la richiesta di aggiornamento di riferimento perché il nome di riferimento presentato nella richiesta non è stato valido. |
locked |
string |
Impossibile completare l'aggiornamento di riferimento perché il ref è bloccato da un altro utente. |
manageNotePermissionRequired |
string |
Impossibile completare la richiesta di aggiornamento ref perché l'utente non dispone delle autorizzazioni di creazione note necessarie per scrivere questa nota |
refNameConflict |
string |
Impossibile completare l'aggiornamento di riferimento perché, in modalità senza distinzione tra maiuscole e minuscole, il nome di riferimento è in conflitto con un nome di riferimento esistente e con maiuscole e minuscole. |
rejectedByPlugin |
string |
Impossibile completare l'aggiornamento di riferimento perché è stato rifiutato dal plug-in. |
rejectedByPolicy |
string |
Impossibile completare l'aggiornamento di riferimento perché è stato rifiutato dai criteri. |
staleOldObjectId |
string |
Indica che non è stato possibile completare la richiesta di aggiornamento di riferimento perché l'ID oggetto precedente presentato nella richiesta non era l'ID oggetto del ref quando il database ha tentato l'aggiornamento. Lo scenario più probabile è che il chiamante ha perso una gara per aggiornare il ref. |
succeeded |
string |
Indica che la richiesta di aggiornamento ref è stata completata correttamente. |
succeededCorruptRef |
string |
Indica che la richiesta di aggiornamento ref è stata completata correttamente, ma il riferimento passato è stato danneggiato, come in, l'ID oggetto precedente è stato errato. Questa operazione dovrebbe verificarsi solo durante le eliminazioni. |
succeededNonExistentRef |
string |
Indica che la richiesta di aggiornamento ref è stata completata correttamente, ma il riferimento non esiste in realtà in modo che non siano state apportate modifiche. Questa operazione dovrebbe verificarsi solo durante le eliminazioni. |
unprocessed |
string |
La richiesta non è stata elaborata |
unresolvableToCommit |
string |
Impossibile completare la richiesta di aggiornamento ref perché non è stato possibile risolvere il nuovo ID oggetto per il ref a un oggetto commit (potenzialmente tramite qualsiasi numero di tag) |
writePermissionRequired |
string |
Impossibile completare la richiesta di aggiornamento ref perché l'utente non dispone delle autorizzazioni di scrittura necessarie per scrivere questo riferimento |