Share via


Repositories - Create

Crie um repositório git em um projeto de equipe.

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

Parâmetros de URI

Nome Em Obrigatório Tipo Description
organization
path True

string

O nome da organização do Azure DevOps.

project
path

string

ID do projeto ou nome do projeto

api-version
query True

string

Versão da API a ser usada. Isso deve ser definido como '7.1-preview.1' para usar essa versão da API.

sourceRef
query

string

[opcional] Especifique os refs de origem a serem usados ao criar um repositório de bifurcação

Corpo da solicitação

Nome Tipo Description
name

string

parentRepository

GitRepositoryRef

project

TeamProjectReference

Representa uma referência superficial a um TeamProject.

Respostas

Nome Tipo Description
201 Created

GitRepository

Criado

Segurança

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 Description
vso.code_manage Concede a capacidade de ler, atualizar e excluir o código-fonte, acessar metadados sobre commits, conjuntos de alterações, branches e outros artefatos de controle de versão. Também concede a capacidade de criar e gerenciar repositórios de código, criar e gerenciar solicitações de pull e revisões de código e receber notificações sobre eventos de controle de versão por meio de ganchos de serviço.

Exemplos

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

Definições

Nome Description
GitRepository
GitRepositoryCreateOptions
GitRepositoryRef
ProjectState

Estado do projeto.

ProjectVisibility

Visibilidade do projeto.

ReferenceLinks

A classe para representar uma coleção de links de referência REST.

TeamProjectCollectionReference

Objeto de referência para um TeamProjectCollection.

TeamProjectReference

Representa uma referência superficial a um TeamProject.

GitRepository

Nome Tipo Description
_links

ReferenceLinks

A classe para representar uma coleção de links de referência REST.

defaultBranch

string

id

string

isDisabled

boolean

True se o repositório estiver desabilitado. De outra forma, falso.

isFork

boolean

True se o repositório foi criado como um fork.

isInMaintenance

boolean

True se o repositório estiver em manutenção. De outra forma, falso.

name

string

parentRepository

GitRepositoryRef

project

TeamProjectReference

Representa uma referência superficial a um TeamProject.

remoteUrl

string

size

integer

Tamanho compactado (bytes) do repositório.

sshUrl

string

url

string

validRemoteUrls

string[]

webUrl

string

GitRepositoryCreateOptions

Nome Tipo Description
name

string

parentRepository

GitRepositoryRef

project

TeamProjectReference

Representa uma referência superficial a um TeamProject.

GitRepositoryRef

Nome Tipo Description
collection

TeamProjectCollectionReference

Coleção de Projetos de Equipe em que esse Fork reside

id

string

isFork

boolean

True se o repositório foi criado como um fork

name

string

project

TeamProjectReference

Representa uma referência superficial a um TeamProject.

remoteUrl

string

sshUrl

string

url

string

ProjectState

Estado do projeto.

Nome Tipo Description
all

string

Todos os projetos, independentemente do estado, exceto Excluídos.

createPending

string

O projeto foi enfileirado para criação, mas o processo ainda não foi iniciado.

deleted

string

O projeto foi excluído.

deleting

string

O Project está em processo de exclusão.

new

string

O projeto está em processo de criação.

unchanged

string

O projeto não foi alterado.

wellFormed

string

O project é completamente criado e pronto para uso.

ProjectVisibility

Visibilidade do projeto.

Nome Tipo Description
private

string

O projeto só é visível para usuários com acesso explícito.

public

string

O projeto é visível para todos.

A classe para representar uma coleção de links de referência REST.

Nome Tipo Description
links

object

A exibição somente leitura dos links. Como os links de referência são somente leitura, só queremos expô-los como somente leitura.

TeamProjectCollectionReference

Objeto de referência para um TeamProjectCollection.

Nome Tipo Description
avatarUrl

string

URL do avatar da coleção.

id

string

ID da coleção.

name

string

Nome da Coleção.

url

string

URL REST da coleção.

TeamProjectReference

Representa uma referência superficial a um TeamProject.

Nome Tipo Description
abbreviation

string

Abreviação do projeto.

defaultTeamImageUrl

string

Url para a imagem de identidade de equipe padrão.

description

string

A descrição do projeto (se houver).

id

string

Identificador do projeto.

lastUpdateTime

string

Hora da última atualização do projeto.

name

string

Nome do projeto.

revision

integer

Revisão do projeto.

state

ProjectState

Estado do projeto.

url

string

URL para a versão completa do objeto.

visibility

ProjectVisibility

Visibilidade do projeto.