Разветвление репозитория с помощью интерфейса командной строки Azure az repos

#azure-devops #azure-pipelines #azure-devops-rest-api #azure-cli

Вопрос:

Azure предоставляет интерфейс az repos командной строки для Azure DevOps, который обеспечивает удобное программное управление репозиториями.

Однако, похоже, что нет очевидного способа раскошелиться на репозиторий с помощью интерфейса az repos командной строки.

Предполагаемый шаблон использования здесь заключается в том, чтобы перенести целевой репозиторий из данного проекта в репозиторий в (возможно) другом проекте в рамках той же подписки Azure DevOps.

Решение, которое может быть выполнено из конвейера DevOps, также будет полезным решением здесь.

Кому-нибудь это удалось?

Ответ №1:

Вы можете использовать Rest API для создания вилки. вам нужно использовать репозитории — Создать Api, а в URL и теле добавить исходный репозиторий:

 POST https://dev.azure.com/{organization}/{project}/_apis/git/repositories?sourceRef={sourceRef}amp;api-version=6.0
 

Например:

 POST https://dev.azure.com/{organization}/_apis/git/repositories?sourceRef=users/heads/masteramp;api-version=6.0
 

Тело:

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