Refs - Update Refs
Erstellen, Aktualisieren oder Löschen von refs(branches).
Das Aktualisieren eines Verweises bedeutet, dass er auf einen anderen Commit als bisher verweist. Sie müssen sowohl den alten als auch den neuen Commit angeben, um Racebedingungen zu vermeiden.
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
URI-Parameter
Name | In | Erforderlich | Typ | Beschreibung |
---|---|---|---|---|
organization
|
path | True |
string |
Der Name der Azure DevOps-Organisation. |
repository
|
path | True |
string |
Der Name oder die ID des Repositorys. |
project
|
path |
string |
Projekt-ID oder Projektname |
|
api-version
|
query | True |
string |
Version der zu verwendenden API. Dies sollte auf "7.1-preview.1" festgelegt werden, um diese Version der API zu verwenden. |
project
|
query |
string |
ID oder Name des Teamprojekts. Optional, wenn eine ID für das Repository angegeben wird. |
Anforderungstext
Name | Typ | Beschreibung |
---|---|---|
body |
Liste der Ref-Updates, die durchgeführt werden sollen |
Antworten
Name | Typ | Beschreibung |
---|---|---|
200 OK |
Erfolgreicher Vorgang |
Sicherheit
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
Name | Beschreibung |
---|---|
vso.code_write | Ermöglicht das Lesen, Aktualisieren und Löschen von Quellcode, den Zugriff auf Metadaten zu Commits, Changesets, Branches und anderen Versionskontrollartefakten. Ermöglicht außerdem das Erstellen und Verwalten von Pull Requests und Code Reviews sowie das Empfangen von Benachrichtigungen zu Versionskontrollereignissen über Diensthooks. |
Beispiele
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
}
Definitionen
Name | Beschreibung |
---|---|
Git |
|
Git |
|
Git |
Status des Updates vom TFS-Server. |
GitRefUpdate
Name | Typ | Beschreibung |
---|---|---|
isLocked |
boolean |
|
name |
string |
|
newObjectId |
string |
|
oldObjectId |
string |
|
repositoryId |
string |
GitRefUpdateResult
Name | Typ | Beschreibung |
---|---|---|
customMessage |
string |
Benutzerdefinierte Meldung für das Ergebnisobjekt Für instance, Grund für fehler. |
isLocked |
boolean |
Gibt an, ob der Verweis gesperrt ist oder nicht |
name |
string |
Ref-Name |
newObjectId |
string |
Neue Objekt-ID |
oldObjectId |
string |
Alte Objekt-ID |
rejectedBy |
string |
Name des Plug-Ins, das die Aktualisierung abgelehnt hat. |
repositoryId |
string |
Repository-ID |
success |
boolean |
True, wenn die Ref-Aktualisierung erfolgreich war, andernfalls false |
updateStatus |
Status des Updates vom TFS-Server. |
GitRefUpdateStatus
Status des Updates vom TFS-Server.
Name | Typ | Beschreibung |
---|---|---|
createBranchPermissionRequired |
string |
Die Anforderung zum Aktualisieren des Verweiss konnte nicht abgeschlossen werden, da dem Benutzer die Berechtigung zum Erstellen eines Branchs fehlt. |
createTagPermissionRequired |
string |
Die Anforderung zum Aktualisieren des Verweiss konnte nicht abgeschlossen werden, da dem Benutzer die Berechtigung zum Erstellen eines Tags fehlt. |
forcePushRequired |
string |
Gibt an, dass die Anforderung zur Ref-Aktualisierung nicht abgeschlossen werden konnte, da ein Teil des Graphen durch diese Änderung getrennt würde und der Aufrufer nicht über die ForcePush-Berechtigung für das Repository verfügt. |
invalidRefName |
string |
Gibt an, dass die Anforderung zum Aktualisieren des Verweiss nicht abgeschlossen werden konnte, da der in der Anforderung dargestellte Verweisname ungültig war. |
locked |
string |
Die Ref-Aktualisierung konnte nicht abgeschlossen werden, da der Verweis von einem anderen Benutzer gesperrt wurde. |
manageNotePermissionRequired |
string |
Die Anforderung zum Aktualisieren des Verweiss konnte nicht abgeschlossen werden, da dem Benutzer die erforderlichen Berechtigungen zum Erstellen dieser Notiz fehlen. |
refNameConflict |
string |
Die Ref-Aktualisierung konnte nicht abgeschlossen werden, da der Verweisname im Modus ohne Berücksichtigung der Groß-/Kleinschreibung mit einem vorhandenen Ref-Namen in unterschiedlicher Groß-/Kleinschreibung in Konflikt stehen. |
rejectedByPlugin |
string |
Das Ref-Update konnte nicht abgeschlossen werden, da es vom Plug-In abgelehnt wurde. |
rejectedByPolicy |
string |
Die Ref-Aktualisierung konnte nicht abgeschlossen werden, da sie von der Richtlinie abgelehnt wurde. |
staleOldObjectId |
string |
Gibt an, dass die Anforderung zum Aktualisieren des Verweiss nicht abgeschlossen werden konnte, da die in der Anforderung dargestellte alte Objekt-ID nicht die Objekt-ID des Verweiss war, als die Datenbank versucht hat, das Update zu aktualisieren. Das wahrscheinlichste Szenario ist, dass der Aufrufer ein Rennen verloren hat, um den Verweis zu aktualisieren. |
succeeded |
string |
Gibt an, dass die Anforderung zum Aktualisieren der Referenz erfolgreich abgeschlossen wurde. |
succeededCorruptRef |
string |
Gibt an, dass die Anforderung zum Aktualisieren des Verweiss erfolgreich abgeschlossen wurde, aber der übergebene Verweis beschädigt war. Wie in war die alte Objekt-ID ungültig. Dies sollte nur während Löschvorgängen geschehen. |
succeededNonExistentRef |
string |
Gibt an, dass die Anforderung zum Aktualisieren des Verweiss erfolgreich abgeschlossen wurde, die Referenz jedoch nicht vorhanden ist, sodass keine Änderungen vorgenommen wurden. Dies sollte nur während Löschvorgängen geschehen. |
unprocessed |
string |
Die Anforderung wurde nicht verarbeitet. |
unresolvableToCommit |
string |
Die Anforderung zum Aktualisieren des Verweiss konnte nicht abgeschlossen werden, da die neue Objekt-ID für den Verweis nicht in ein Commitobjekt aufgelöst werden konnte (möglicherweise über eine beliebige Anzahl von Tags). |
writePermissionRequired |
string |
Die Anforderung zum Aktualisieren des Verweiss konnte nicht abgeschlossen werden, da dem Benutzer keine Schreibberechtigungen zum Schreiben dieser Ref fehlen. |