Udostępnij za pośrednictwem


Repositories - Create

Utwórz repozytorium git w projekcie zespołowym.

POST https://dev.azure.com/{organization}/{project}/_apis/git/repositories?api-version=7.1-preview.1
POST https://dev.azure.com/{organization}/{project}/_apis/git/repositories?sourceRef={sourceRef}&api-version=7.1-preview.1

Parametry identyfikatora URI

Nazwa W Wymagane Typ Opis
organization
path True

string

Nazwa organizacji usługi Azure DevOps.

project
path

string

Identyfikator projektu lub nazwa projektu

api-version
query True

string

Wersja interfejsu API do użycia. Ta wartość powinna być ustawiona na wartość "7.1-preview.1", aby używać tej wersji interfejsu API.

sourceRef
query

string

[opcjonalnie] Określanie źródłowych refs do użycia podczas tworzenia repozytorium rozwidlenia

Treść żądania

Nazwa Typ Opis
name

string

parentRepository

GitRepositoryRef

project

TeamProjectReference

Reprezentuje płytkie odwołanie do projektu TeamProject.

Odpowiedzi

Nazwa Typ Opis
201 Created

GitRepository

Utworzone

Zabezpieczenia

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

Nazwa Opis
vso.code_manage Umożliwia odczytywanie, aktualizowanie i usuwanie kodu źródłowego, uzyskiwanie dostępu do metadanych dotyczących zatwierdzeń, zestawów zmian, gałęzi i innych artefaktów kontroli wersji. Umożliwia również tworzenie repozytoriów kodu i zarządzanie nimi, tworzenie żądań ściągnięcia i przeglądów kodu oraz odbieranie powiadomień o zdarzeniach kontroli wersji za pośrednictwem punktów zaczepienia usługi.

Przykłady

Create a fork of a parent repository
Create a fork of a parent repository syncing only the provided refs
Create a repository

Create a fork of a parent repository

Sample Request

POST https://dev.azure.com/{organization}/_apis/git/repositories?api-version=7.1-preview.1

{
  "name": "forkRepository",
  "project": {
    "id": "3b046b6a-d070-4cd5-ad59-2eace5d05b90"
  },
  "parentRepository": {
    "id": "57a09b16-c635-4ec9-bd6b-d501fec4eb7b",
    "project": {
      "id": "3b046b6a-d070-4cd5-ad59-2eace5d05b90"
    }
  }
}

Sample Response

{
  "id": "76b510af-7910-4a96-9902-b978d6226bee",
  "name": "forkRepository",
  "url": "https://dev.azure.com/fabrikam/MyFirstProject/_apis/git/repositories/76b510af-7910-4a96-9902-b978d6226bee",
  "project": {
    "id": "3b046b6a-d070-4cd5-ad59-2eace5d05b90",
    "name": "MyFirstProject",
    "url": "https://dev.azure.com/fabrikam/_apis/projects/3b046b6a-d070-4cd5-ad59-2eace5d05b90",
    "state": "wellFormed",
    "revision": 11,
    "visibility": "private",
    "defaultTeamImageUrl": null
  },
  "size": 0,
  "remoteUrl": "https://dev.azure.com/fabrikam/MyFirstProject/_git/forkRepository",
  "sshUrl": "git@ssh.dev.azure.com:v3/fabrikam/MyFirstProject/forkRepository",
  "isFork": true,
  "_links": {
    "forkSyncOperation": {
      "href": "https://dev.azure.com/fabrikam/_apis/git/repositories/76b510af-7910-4a96-9902-b978d6226bee/forkSyncRequests/8"
    }
  }
}

Create a fork of a parent repository syncing only the provided refs

Sample Request

POST https://dev.azure.com/{organization}/_apis/git/repositories?sourceRef=users/heads/master&api-version=7.1-preview.1

{
  "name": "forkRepositoryWithOnlySourceRef",
  "project": {
    "id": "3b046b6a-d070-4cd5-ad59-2eace5d05b90"
  },
  "parentRepository": {
    "id": "76b510af-7910-4a96-9902-b978d6226bee",
    "project": {
      "id": "3b046b6a-d070-4cd5-ad59-2eace5d05b90"
    }
  }
}

Sample Response

{
  "id": "29230c30-9125-459b-a3f6-ffab329053bd",
  "name": "forkRepositoryWithOnlySourceRef",
  "url": "https://dev.azure.com/fabrikam/MyFirstProject/_apis/git/repositories/29230c30-9125-459b-a3f6-ffab329053bd",
  "project": {
    "id": "3b046b6a-d070-4cd5-ad59-2eace5d05b90",
    "name": "MyFirstProject",
    "url": "https://dev.azure.com/fabrikam/_apis/projects/3b046b6a-d070-4cd5-ad59-2eace5d05b90",
    "state": "wellFormed",
    "revision": 12,
    "visibility": "private",
    "defaultTeamImageUrl": null
  },
  "size": 0,
  "remoteUrl": "https://dev.azure.com/fabrikam/MyFirstProject/_git/forkRepositoryWithOnlySourceRef",
  "sshUrl": "git@ssh.dev.azure.com:v3/fabrikam/MyFirstProject/forkRepositoryWithOnlySourceRef",
  "isFork": true,
  "_links": {
    "forkSyncOperation": {
      "href": "https://dev.azure.com/fabrikam/_apis/git/repositories/29230c30-9125-459b-a3f6-ffab329053bd/forkSyncRequests/7"
    }
  }
}

Create a repository

Sample Request

POST https://dev.azure.com/fabrikam/_apis/git/repositories?api-version=7.1-preview.1

{
  "name": "AnotherRepository",
  "project": {
    "id": "6ce954b1-ce1f-45d1-b94d-e6bf2464ba2c"
  }
}

Sample Response

{
  "id": "5febef5a-833d-4e14-b9c0-14cb638f91e6",
  "name": "AnotherRepository",
  "url": "https://dev.azure.com/fabrikam/_apis/git/repositories/5febef5a-833d-4e14-b9c0-14cb638f91e6",
  "project": {
    "id": "6ce954b1-ce1f-45d1-b94d-e6bf2464ba2c",
    "name": "Fabrikam-Fiber-Git",
    "url": "https://dev.azure.com/fabrikam/_apis/projects/6ce954b1-ce1f-45d1-b94d-e6bf2464ba2c",
    "state": "wellFormed"
  },
  "remoteUrl": "https://dev.azure.com/fabrikam/Fabrikam-Fiber-Git/_git/AnotherRepository"
}

Definicje

Nazwa Opis
GitRepository
GitRepositoryCreateOptions
GitRepositoryRef
ProjectState

Stan projektu.

ProjectVisibility

Widoczność projektu.

ReferenceLinks

Klasa reprezentująca kolekcję linków referencyjnych REST.

TeamProjectCollectionReference

Obiekt referencyjny dla obiektu TeamProjectCollection.

TeamProjectReference

Reprezentuje płytkie odwołanie do projektu TeamProject.

GitRepository

Nazwa Typ Opis
_links

ReferenceLinks

Klasa reprezentująca kolekcję linków referencyjnych REST.

defaultBranch

string

id

string

isDisabled

boolean

Wartość True, jeśli repozytorium jest wyłączone. W przeciwnym razie wartość false.

isFork

boolean

Wartość true, jeśli repozytorium zostało utworzone jako rozwidlenie.

isInMaintenance

boolean

Wartość true, jeśli repozytorium jest w konserwacji. W przeciwnym razie wartość false.

name

string

parentRepository

GitRepositoryRef

project

TeamProjectReference

Reprezentuje płytkie odwołanie do projektu TeamProject.

remoteUrl

string

size

integer

Skompresowany rozmiar (bajty) repozytorium.

sshUrl

string

url

string

validRemoteUrls

string[]

webUrl

string

GitRepositoryCreateOptions

Nazwa Typ Opis
name

string

parentRepository

GitRepositoryRef

project

TeamProjectReference

Reprezentuje płytkie odwołanie do projektu TeamProject.

GitRepositoryRef

Nazwa Typ Opis
collection

TeamProjectCollectionReference

Kolekcja projektów zespołowych, w której znajduje się ten rozwidlenie

id

string

isFork

boolean

Prawda, jeśli repozytorium zostało utworzone jako rozwidlenie

name

string

project

TeamProjectReference

Reprezentuje płytkie odwołanie do projektu TeamProject.

remoteUrl

string

sshUrl

string

url

string

ProjectState

Stan projektu.

Nazwa Typ Opis
all

string

Wszystkie projekty niezależnie od stanu z wyjątkiem usuniętych.

createPending

string

Projekt został jeszcze w kolejce do utworzenia, ale proces nie został jeszcze uruchomiony.

deleted

string

Projekt został usunięty.

deleting

string

Projekt jest w trakcie usuwania.

new

string

Projekt jest w trakcie tworzenia.

unchanged

string

Projekt nie został zmieniony.

wellFormed

string

Projekt jest całkowicie tworzony i gotowy do użycia.

ProjectVisibility

Widoczność projektu.

Nazwa Typ Opis
private

string

Projekt jest widoczny tylko dla użytkowników z jawnym dostępem.

public

string

Projekt jest widoczny dla wszystkich.

Klasa reprezentująca kolekcję linków referencyjnych REST.

Nazwa Typ Opis
links

object

Widok linków w trybie tylko do odczytu. Ponieważ linki odwołania są tylko do odczytu, chcemy uwidocznić je tylko jako tylko do odczytu.

TeamProjectCollectionReference

Obiekt referencyjny dla obiektu TeamProjectCollection.

Nazwa Typ Opis
avatarUrl

string

Adres URL awatara kolekcji.

id

string

Identyfikator kolekcji.

name

string

Nazwa kolekcji.

url

string

Adres URL REST kolekcji.

TeamProjectReference

Reprezentuje płytkie odwołanie do projektu TeamProject.

Nazwa Typ Opis
abbreviation

string

Skrót projektu.

defaultTeamImageUrl

string

Adres URL domyślnego obrazu tożsamości zespołu.

description

string

Opis projektu (jeśli istnieje).

id

string

Identyfikator projektu.

lastUpdateTime

string

Czas ostatniej aktualizacji projektu.

name

string

Nazwa projektu.

revision

integer

Poprawka projektu.

state

ProjectState

Stan projektu.

url

string

Adres URL do pełnej wersji obiektu.

visibility

ProjectVisibility

Widoczność projektu.