Bagikan melalui


Refs - Update Refs

Membuat, memperbarui, atau menghapus refs (cabang).

Memperbarui ref berarti membuatnya menunjuk pada penerapan yang berbeda dari yang digunakan. Anda harus menentukan penerapan lama dan baru untuk menghindari kondisi balapan.

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

Parameter URI

Nama Dalam Diperlukan Jenis Deskripsi
organization
path True

string

Nama organisasi Azure DevOps.

repositoryId
path True

string

Nama atau ID repositori.

project
path

string

ID proyek atau nama proyek

api-version
query True

string

Versi API yang akan digunakan. Ini harus diatur ke '7.1-preview.1' untuk menggunakan versi api ini.

projectId
query

string

ID atau nama proyek tim. Opsional jika menentukan ID untuk repositori.

Isi Permintaan

Nama Jenis Deskripsi
body

GitRefUpdate[]

Daftar pembaruan ref untuk dicoba dilakukan

Respons

Nama Jenis Deskripsi
200 OK

GitRefUpdateResult[]

operasi berhasil

Keamanan

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

Nama Deskripsi
vso.code_write Memberikan kemampuan untuk membaca, memperbarui, dan menghapus kode sumber, mengakses metadata tentang penerapan, set perubahan, cabang, dan artefak kontrol versi lainnya. Juga memberikan kemampuan untuk membuat dan mengelola permintaan pull dan ulasan kode dan untuk menerima pemberitahuan tentang peristiwa kontrol versi melalui kait layanan.

Contoh

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
}

Definisi

Nama Deskripsi
GitRefUpdate
GitRefUpdateResult
GitRefUpdateStatus

Status pembaruan dari server TFS.

GitRefUpdate

Nama Jenis Deskripsi
isLocked

boolean

name

string

newObjectId

string

oldObjectId

string

repositoryId

string

GitRefUpdateResult

Nama Jenis Deskripsi
customMessage

string

Pesan kustom untuk objek hasil Misalnya, Alasan gagal.

isLocked

boolean

Apakah ref terkunci atau tidak

name

string

Nama ref

newObjectId

string

ID objek baru

oldObjectId

string

ID objek lama

rejectedBy

string

Nama plugin yang menolak pembaruan.

repositoryId

string

ID Repositori

success

boolean

Benar jika pembaruan ref berhasil, salah jika tidak

updateStatus

GitRefUpdateStatus

Status pembaruan dari server TFS.

GitRefUpdateStatus

Status pembaruan dari server TFS.

Nama Jenis Deskripsi
createBranchPermissionRequired

string

Permintaan pembaruan ref tidak dapat diselesaikan karena pengguna tidak memiliki izin untuk membuat cabang

createTagPermissionRequired

string

Permintaan pembaruan ref tidak dapat diselesaikan karena pengguna tidak memiliki izin untuk membuat tag

forcePushRequired

string

Menunjukkan bahwa permintaan pembaruan ref tidak dapat diselesaikan karena bagian dari grafik akan terputus oleh perubahan ini, dan pemanggil tidak memiliki izin ForcePush pada repositori.

invalidRefName

string

Menunjukkan bahwa permintaan pembaruan ref tidak dapat diselesaikan karena nama ref yang disajikan dalam permintaan tidak valid.

locked

string

Pembaruan ref tidak dapat diselesaikan karena ref dikunci oleh pengguna lain.

manageNotePermissionRequired

string

Permintaan pembaruan ref tidak dapat diselesaikan karena pengguna tidak memiliki izin pembuatan catatan yang diperlukan untuk menulis catatan ini

refNameConflict

string

Pembaruan ref tidak dapat diselesaikan karena, dalam mode tidak peka huruf besar/kecil, nama ref berkonflik dengan nama ref yang ada dan berbeda-kasus.

rejectedByPlugin

string

Pembaruan ref tidak dapat diselesaikan karena ditolak oleh plugin.

rejectedByPolicy

string

Pembaruan ref tidak dapat diselesaikan karena ditolak oleh kebijakan.

staleOldObjectId

string

Menunjukkan bahwa permintaan pembaruan ref tidak dapat diselesaikan karena ID objek lama yang disajikan dalam permintaan bukan ID objek ref saat database mencoba pembaruan. Skenario yang paling mungkin adalah pemanggil kehilangan perlombaan untuk memperbarui ref.

succeeded

string

Menunjukkan bahwa permintaan pembaruan ref berhasil diselesaikan.

succeededCorruptRef

string

Menunjukkan bahwa permintaan pembaruan ref berhasil diselesaikan, tetapi ref yang diteruskan rusak - seperti dalam, ID objek lama buruk. Ini seharusnya hanya terjadi selama penghapusan.

succeededNonExistentRef

string

Menunjukkan bahwa permintaan pembaruan ref berhasil diselesaikan, tetapi ref sebenarnya tidak ada sehingga tidak ada perubahan yang dilakukan. Ini seharusnya hanya terjadi selama penghapusan.

unprocessed

string

Permintaan tidak diproses

unresolvableToCommit

string

Permintaan pembaruan ref tidak dapat diselesaikan karena ID objek baru untuk ref tidak dapat diselesaikan ke objek penerapan (berpotensi melalui sejumlah tag)

writePermissionRequired

string

Permintaan pembaruan ref tidak dapat diselesaikan karena pengguna tidak memiliki izin tulis yang diperlukan untuk menulis ref ini