Share via


Repositories - Create

Erstellen Sie ein Git-Repository in einem Teamprojekt.

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

URI-Parameter

Name In Erforderlich Typ Beschreibung
organization
path True

string

Der Name der Azure DevOps-Organisation.

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.

sourceRef
query

string

[optional] Angeben der Quellrefs, die beim Erstellen eines Fork-Repositorys verwendet werden sollen

Anforderungstext

Name Typ Beschreibung
name

string

parentRepository

GitRepositoryRef

project

TeamProjectReference

Stellt einen flachen Verweis auf ein TeamProject dar.

Antworten

Name Typ Beschreibung
201 Created

GitRepository

Erstellt

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_manage Ermöglicht das Lesen, Aktualisieren und Löschen von Quellcode sowie den Zugriff auf Metadaten zu Commits, Changesets, Branches und anderen Versionskontrollartefakten. Ermöglicht außerdem das Erstellen und Verwalten von Coderepositorys, das Erstellen und Verwalten von Pull Requests und Code Reviews sowie das Empfangen von Benachrichtigungen zu Versionskontrollereignissen über Diensthaken.

Beispiele

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"
}

Definitionen

Name Beschreibung
GitRepository
GitRepositoryCreateOptions
GitRepositoryRef
ProjectState

Projektstatus.

ProjectVisibility

Projektsichtbarkeit.

ReferenceLinks

Die Klasse, die eine Auflistung von REST-Verweislinks darstellt.

TeamProjectCollectionReference

Referenzobjekt für eine TeamProjectCollection.

TeamProjectReference

Stellt einen flachen Verweis auf ein TeamProject dar.

GitRepository

Name Typ Beschreibung
_links

ReferenceLinks

Die Klasse, die eine Auflistung von REST-Verweislinks darstellt.

defaultBranch

string

id

string

isDisabled

boolean

True, wenn das Repository deaktiviert ist. Andernfalls FALSE.

isFork

boolean

True, wenn das Repository als Fork erstellt wurde.

isInMaintenance

boolean

True, wenn sich das Repository in Wartung befindet. Andernfalls FALSE.

name

string

parentRepository

GitRepositoryRef

project

TeamProjectReference

Stellt einen flachen Verweis auf ein TeamProject dar.

remoteUrl

string

size

integer

Komprimierte Größe (Bytes) des Repositorys.

sshUrl

string

url

string

validRemoteUrls

string[]

webUrl

string

GitRepositoryCreateOptions

Name Typ Beschreibung
name

string

parentRepository

GitRepositoryRef

project

TeamProjectReference

Stellt einen flachen Verweis auf ein TeamProject dar.

GitRepositoryRef

Name Typ Beschreibung
collection

TeamProjectCollectionReference

Team Project Collection, in der sich dieser Fork befindet

id

string

isFork

boolean

True, wenn das Repository als Fork erstellt wurde

name

string

project

TeamProjectReference

Stellt einen flachen Verweis auf ein TeamProject dar.

remoteUrl

string

sshUrl

string

url

string

ProjectState

Projektstatus.

Name Typ Beschreibung
all

string

Alle Projekte unabhängig vom Zustand außer Gelöscht.

createPending

string

Project wurde für die Erstellung in die Warteschlange gestellt, aber der Prozess wurde noch nicht gestartet.

deleted

string

Project wurde gelöscht.

deleting

string

Project wird gerade gelöscht.

new

string

Das Projekt wird gerade erstellt.

unchanged

string

Project wurde nicht geändert.

wellFormed

string

Project ist vollständig erstellt und einsatzbereit.

ProjectVisibility

Projektsichtbarkeit.

Name Typ Beschreibung
private

string

Das Projekt ist nur für Benutzer mit explizitem Zugriff sichtbar.

public

string

Das Projekt ist für alle sichtbar.

Die Klasse, die eine Auflistung von REST-Verweislinks darstellt.

Name Typ Beschreibung
links

object

Die schreibgeschützte Ansicht der Links. Da Verweislinks schreibgeschützt sind, möchten wir sie nur als schreibgeschützt verfügbar machen.

TeamProjectCollectionReference

Referenzobjekt für eine TeamProjectCollection.

Name Typ Beschreibung
avatarUrl

string

Sammlungs-Avatar-URL.

id

string

Sammlungs-ID.

name

string

Sammlungsname.

url

string

SAMMLUNGS-REST-URL.

TeamProjectReference

Stellt einen flachen Verweis auf ein TeamProject dar.

Name Typ Beschreibung
abbreviation

string

Projektkürzel.

defaultTeamImageUrl

string

URL zum Standardmäßigen Teamidentitätsimage.

description

string

Die Projektbeschreibung (falls vorhanden).

id

string

Projektbezeichner.

lastUpdateTime

string

Zeitpunkt der letzten Aktualisierung des Projekts.

name

string

Der Projektname.

revision

integer

Projektrevision.

state

ProjectState

Projektstatus.

url

string

URL zur Vollversion des Objekts.

visibility

ProjectVisibility

Projektsichtbarkeit.