Compartir a través de


Repositories - Create

Cree un repositorio git en un proyecto de equipo.

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 identificador URI

Nombre En Requerido Tipo Description
organization
path True

string

El nombre de la organización de Azure DevOps.

project
path

string

Id. de proyecto o nombre del proyecto

api-version
query True

string

Versión de la API que se va a usar. Debe establecerse en "7.1-preview.1" para usar esta versión de la API.

sourceRef
query

string

[opcional] Especificación de las referencias de origen que se van a usar al crear un repositorio de bifurcación

Cuerpo de la solicitud

Nombre Tipo Description
name

string

parentRepository

GitRepositoryRef

project

TeamProjectReference

Representa una referencia superficial a un TeamProject.

Respuestas

Nombre Tipo Description
201 Created

GitRepository

Creado

Seguridad

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

Nombre Description
vso.code_manage Concede la capacidad de leer, actualizar y eliminar código fuente, acceder a los metadatos sobre confirmaciones, conjuntos de cambios, ramas y otros artefactos de control de versiones. También concede la capacidad de crear y administrar repositorios de código, crear y administrar solicitudes de incorporación de cambios y revisiones de código, y recibir notificaciones sobre eventos de control de versiones a través de enlaces de servicio.

Ejemplos

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

Definiciones

Nombre Description
GitRepository
GitRepositoryCreateOptions
GitRepositoryRef
ProjectState

Estado del proyecto.

ProjectVisibility

Visibilidad del proyecto.

ReferenceLinks

Clase que representa una colección de vínculos de referencia de REST.

TeamProjectCollectionReference

Objeto reference para teamProjectCollection.

TeamProjectReference

Representa una referencia superficial a un TeamProject.

GitRepository

Nombre Tipo Description
_links

ReferenceLinks

Clase que representa una colección de vínculos de referencia de REST.

defaultBranch

string

id

string

isDisabled

boolean

True si el repositorio está deshabilitado. En caso contrario, devuelve un valor falso.

isFork

boolean

True si el repositorio se creó como bifurcación.

isInMaintenance

boolean

True si el repositorio está en mantenimiento. En caso contrario, devuelve un valor falso.

name

string

parentRepository

GitRepositoryRef

project

TeamProjectReference

Representa una referencia superficial a un TeamProject.

remoteUrl

string

size

integer

Tamaño comprimido (bytes) del repositorio.

sshUrl

string

url

string

validRemoteUrls

string[]

webUrl

string

GitRepositoryCreateOptions

Nombre Tipo Description
name

string

parentRepository

GitRepositoryRef

project

TeamProjectReference

Representa una referencia superficial a un TeamProject.

GitRepositoryRef

Nombre Tipo Description
collection

TeamProjectCollectionReference

Colección de proyectos de equipo donde reside esta bifurcación

id

string

isFork

boolean

True si el repositorio se creó como bifurcación

name

string

project

TeamProjectReference

Representa una referencia superficial a un TeamProject.

remoteUrl

string

sshUrl

string

url

string

ProjectState

Estado del proyecto.

Nombre Tipo Description
all

string

Todos los proyectos independientemente del estado excepto Eliminado.

createPending

string

Project se ha puesto en cola para su creación, pero el proceso aún no se ha iniciado.

deleted

string

Se ha eliminado el proyecto.

deleting

string

El proyecto está en proceso de eliminación.

new

string

El proyecto está en proceso de creación.

unchanged

string

No se ha cambiado el proyecto.

wellFormed

string

Project se crea completamente y está listo para usarse.

ProjectVisibility

Visibilidad del proyecto.

Nombre Tipo Description
private

string

El proyecto solo es visible para los usuarios con acceso explícito.

public

string

El proyecto es visible para todos.

Clase que representa una colección de vínculos de referencia de REST.

Nombre Tipo Description
links

object

Vista de solo lectura de los vínculos. Dado que los vínculos de referencia son de solo lectura, solo queremos exponerlos como de solo lectura.

TeamProjectCollectionReference

Objeto reference para teamProjectCollection.

Nombre Tipo Description
avatarUrl

string

Url del avatar de la colección.

id

string

Id. de colección.

name

string

Nombre de la colección.

url

string

Dirección URL de REST de la colección.

TeamProjectReference

Representa una referencia superficial a un TeamProject.

Nombre Tipo Description
abbreviation

string

Abreviatura del proyecto.

defaultTeamImageUrl

string

Dirección URL a la imagen de identidad del equipo predeterminada.

description

string

Descripción del proyecto (si existe).

id

string

Identificador del proyecto.

lastUpdateTime

string

Hora de la última actualización del proyecto.

name

string

Nombre del proyecto.

revision

integer

Revisión del proyecto.

state

ProjectState

Estado del proyecto.

url

string

Dirección URL a la versión completa del objeto.

visibility

ProjectVisibility

Visibilidad del proyecto.