Git - Commit To Git
Фиксирует изменения, внесенные в рабочую область, в подключенную удаленную ветвь.
Этот API поддерживает длительные операции (LRO).
Чтобы использовать этот API, учетные данные вызывающего объекта должны быть настроены с помощью API обновления учетных данных Git . Вы можете использовать API получения учетных данных Git для проверки конфигурации учетных данных Git.
Вы можете зафиксировать все изменения, определенные элементы или определенные файлы в элементах с помощью режима FileLevelSelective. Чтобы синхронизировать рабочую область впервые, используйте этот API после API подключения и инициализации подключений .
Разрешения
Вызывающий объект должен иметь роль участника или более поздней рабочей области.
Обязательные делегированные области
Workspace.GitCommit.All.
Идентификаторы, поддерживаемые Microsoft Entra
Этот API поддерживает идентичности Microsoft, перечисленные в этом разделе.
| Идентичность | Поддержка |
|---|---|
| Пользователь | Да |
| Представитель службы и управляемые удостоверения | Поддерживается только в том случае, если все элементы , участвующие в операции, поддерживают субъекты-службы. |
Интерфейс
POST https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/git/commitToGit
Параметры URI
| Имя. | В | Обязательно | Тип | Описание |
|---|---|---|---|---|
|
workspace
|
path | True |
string (uuid) |
Идентификатор рабочей области. |
Текст запроса
| Имя. | Обязательно | Тип | Описание |
|---|---|---|---|
| mode | True |
Режим операции фиксации. |
|
| comment |
string maxLength: 300 |
Бесплатный комментарий вызывающего абонента для этой фиксации. Максимальная длина — 300 символов. Если вызывающий объект не предоставляет никаких комментариев, используйте комментарий поставщика Git по умолчанию. |
|
| items |
Определенные элементы для фиксации. Это относится только к режиму выборочной фиксации. Взаимоисключаемая с элементами ItemsWithFileSelection. Элементы можно получить из API состояния Git . |
||
| itemsWithFileSelection |
Элементы с выбором каждого файла для режима фиксации FileLevelSelective. Взаимоисключаемая с элементами. Каждая запись указывает элемент и при необходимости список путей к файлам для фиксации. Если selectedFiles имеет значение NULL или пусто для элемента, все файлы для этого элемента фиксируются. |
||
| workspaceHead |
string |
Полный хэш SHA, с которым синхронизируется рабочая область. Хэш можно получить из API состояния Git . |
Ответы
| Имя. | Тип | Описание |
|---|---|---|
| 200 OK |
Запрос успешно завершен. |
|
| 202 Accepted |
Запрос принят, фиксация в Git выполняется. Заголовки
|
|
| 429 Too Many Requests |
Превышено ограничение скорости обслуживания. Сервер возвращает заголовок, указывающий Заголовки Retry-After: integer |
|
| Other Status Codes |
Распространенные коды ошибок:
|
Примеры
| Commit all to Git example |
| Commit file-level selective to Git example |
| Commit selective items to Git example |
Commit all to Git example
Образец запроса
POST https://api.fabric.microsoft.com/v1/workspaces/1565e6a3-c020-4c0c-dda7-92bafe99eec5/git/commitToGit
{
"mode": "All",
"workspaceHead": "eaa737b48cda41b37ffefac772ea48f6fed3eac4",
"comment": "I'm committing all my changes."
}
Пример ответа
Location: https://api.fabric.microsoft.com/v1/operations/431e8d7b-4a95-4c02-8ccd-6faef5ba1bd7
x-ms-operation-id: 431e8d7b-4a95-4c02-8ccd-6faef5ba1bd7
Retry-After: 30
Commit file-level selective to Git example
Образец запроса
POST https://api.fabric.microsoft.com/v1/workspaces/1565e6a3-c020-4c0c-dda7-92bafe99eec5/git/commitToGit
{
"mode": "FileLevelSelective",
"workspaceHead": "eaa737b48cda41b37ffefac772ea48f6fed3eac4",
"comment": "Commit only the metadata change from MyNotebook",
"itemsWithFileSelection": [
{
"objectId": "cfafbeb1-8037-4d0c-896e-28c4f2e65573",
"selectedFiles": [
"metadata.json"
]
},
{
"objectId": "d5a2b3c4-1234-5678-abcd-ef0123456789",
"selectedFiles": []
}
]
}
Пример ответа
Location: https://api.fabric.microsoft.com/v1/operations/431e8d7b-4a95-4c02-8ccd-6faef5ba1bd7
x-ms-operation-id: 431e8d7b-4a95-4c02-8ccd-6faef5ba1bd7
Retry-After: 30
Commit selective items to Git example
Образец запроса
POST https://api.fabric.microsoft.com/v1/workspaces/1565e6a3-c020-4c0c-dda7-92bafe99eec5/git/commitToGit
{
"mode": "Selective",
"workspaceHead": "eaa737b48cda41b37ffefac772ea48f6fed3eac4",
"comment": "I'm committing specific changes.",
"items": [
{
"logicalId": "111e8d7b-4a95-4c02-8ccd-6faef5ba1bd1",
"objectId": "1153f3b4-dbb8-33c1-a84f-6ae4d776362d"
},
{
"objectId": "7753f3b4-dbb8-44c1-a94f-6ae4d776369e"
}
]
}
Пример ответа
Location: https://api.fabric.microsoft.com/v1/operations/431e8d7b-4a95-4c02-8ccd-6faef5ba1bd7
x-ms-operation-id: 431e8d7b-4a95-4c02-8ccd-6faef5ba1bd7
Retry-After: 30
Определения
| Имя. | Описание |
|---|---|
|
Commit |
Режимы операции фиксации. С течением времени могут добавляться дополнительные режимы. |
|
Commit |
Содержит запрос фиксации. |
|
Error |
Структурированный параметр, предоставляющий дополнительный контекст, доступный для чтения компьютера, об ошибке. |
|
Error |
Объект сведений об ошибках, связанных с ресурсом. |
|
Error |
Ответ на ошибку. |
|
Error |
Сведения об ответе на ошибку. |
|
Item |
Содержит идентификатор элемента. Необходимо определить хотя бы одно из свойств. |
|
Item |
Содержит идентификатор элемента с необязательным выбором уровня файла для операций фиксации. |
CommitMode
Режимы операции фиксации. С течением времени могут добавляться дополнительные режимы.
| Значение | Описание |
|---|---|
| All |
Зафиксируйте все незафиксированные изменения. Вызывающий объект не требуется предоставить список элементов для фиксации. |
| Selective |
Зафиксируйте указанный список элементов с незафиксированными изменениями.
|
| FileLevelSelective |
Фиксация указанных файлов в указанных элементах.
|
CommitToGitRequest
Содержит запрос фиксации.
| Имя. | Тип | Описание |
|---|---|---|
| comment |
string maxLength: 300 |
Бесплатный комментарий вызывающего абонента для этой фиксации. Максимальная длина — 300 символов. Если вызывающий объект не предоставляет никаких комментариев, используйте комментарий поставщика Git по умолчанию. |
| items |
Определенные элементы для фиксации. Это относится только к режиму выборочной фиксации. Взаимоисключаемая с элементами ItemsWithFileSelection. Элементы можно получить из API состояния Git . |
|
| itemsWithFileSelection |
Элементы с выбором каждого файла для режима фиксации FileLevelSelective. Взаимоисключаемая с элементами. Каждая запись указывает элемент и при необходимости список путей к файлам для фиксации. Если selectedFiles имеет значение NULL или пусто для элемента, все файлы для этого элемента фиксируются. |
|
| mode |
Режим операции фиксации. |
|
| workspaceHead |
string |
Полный хэш SHA, с которым синхронизируется рабочая область. Хэш можно получить из API состояния Git . |
ErrorParameter
Структурированный параметр, предоставляющий дополнительный контекст, доступный для чтения компьютера, об ошибке.
| Имя. | Тип | Описание |
|---|---|---|
| message |
string |
Читаемое человеком описание значения параметра. |
| name |
string |
Идентификатор параметра. |
| value |
string |
Значение параметра. |
ErrorRelatedResource
Объект сведений об ошибках, связанных с ресурсом.
| Имя. | Тип | Описание |
|---|---|---|
| resourceId |
string |
Идентификатор ресурса, участвующий в ошибке. |
| resourceType |
string |
Тип ресурса, который участвует в ошибке. |
ErrorResponse
Ответ на ошибку.
| Имя. | Тип | Описание |
|---|---|---|
| errorCode |
string |
Определенный идентификатор, предоставляющий сведения об условии ошибки, что позволяет стандартизировать обмен данными между службой и ее пользователями. |
| isRetriable |
boolean |
Если задано значение true, запрос можно получить.
|
| message |
string |
Удобочитаемое представление ошибки. |
| moreDetails |
Список дополнительных сведений об ошибке. |
|
| parameters |
Структурированные параметры, предоставляющие дополнительный контекст, доступный для чтения компьютера, об ошибке. |
|
| relatedResource |
Сведения об ошибках, связанных с ресурсом. |
|
| requestId |
string (uuid) |
Идентификатор запроса, связанного с ошибкой. |
ErrorResponseDetails
Сведения об ответе на ошибку.
| Имя. | Тип | Описание |
|---|---|---|
| errorCode |
string |
Определенный идентификатор, предоставляющий сведения об условии ошибки, что позволяет стандартизировать обмен данными между службой и ее пользователями. |
| message |
string |
Удобочитаемое представление ошибки. |
| parameters |
Структурированные параметры, предоставляющие дополнительный контекст, доступный для чтения компьютера, об ошибке. |
|
| relatedResource |
Сведения об ошибках, связанных с ресурсом. |
ItemIdentifier
Содержит идентификатор элемента. Необходимо определить хотя бы одно из свойств.
| Имя. | Тип | Описание |
|---|---|---|
| logicalId |
string (uuid) |
Логический идентификатор элемента. Если логический идентификатор недоступен, так как элемент еще не добавлен в рабочую область, можно использовать идентификатор объекта. |
| objectId |
string (uuid) |
Идентификатор объекта элемента. Если идентификатор объекта недоступен, так как элемент был удален из рабочей области, можно использовать логический идентификатор. |
ItemIdentifierWithFileSelection
Содержит идентификатор элемента с необязательным выбором уровня файла для операций фиксации.
| Имя. | Тип | Описание |
|---|---|---|
| logicalId |
string (uuid) |
Логический идентификатор элемента. Если логический идентификатор недоступен, так как элемент еще не добавлен в рабочую область, можно использовать идентификатор объекта. |
| objectId |
string (uuid) |
Идентификатор объекта элемента. Если идентификатор объекта недоступен, так как элемент был удален из рабочей области, можно использовать логический идентификатор. |
| selectedFiles |
string[] |
Пути к файлам для фиксации относительно корневого элемента. Пути используют только косую черту, без косой черты, полные пути к файлам (без каталогов или подстановочных знаков), пустые или пробелы только сегменты и сегменты не могут заканчиваться точками или конечными пробелами. Если значение NULL или пусто, все файлы для этого элемента фиксируются. |