получить ADO информацию о владельце файла, используя azure devops rest apis - PullRequest
0 голосов
/ 07 апреля 2020

Я пытаюсь получить информацию о владельце ADO файла, используя azure devops rest apis. Но я не уверен, как это сделать. Сценарий состоит в том, что я создаю ошибки, используя azure devops, и мне нужно получить информацию о владельце файла, чтобы назначить созданную ошибку соответствующему человеку. Подскажите пожалуйста, есть ли способ сделать это?

1 Ответ

0 голосов
/ 08 апреля 2020

получить информацию о владельце ADO для файла, используя azure devops rest apis

Я не совсем уверен, что вы имеете в виду владельца, любой пользователь, имеющий соответствующие разрешения, может изменить один файл в репозитории легко. Личное мнение, может быть, вы ищете этот оставшийся API (Get):

https://dev.azure.com/{OrgName}/{ProjectName}/_apis/git/repositories/{ReposName}/commits?searchCriteria.itemPath=/ConfigTrans.sln&searchCriteria.itemVersion.version=master&api-version=5.1

1.Замените {OrgName},{ProjectName},{ReposName} на ваше собственное название организации, название проекта и название Repos.

2. Также вам нужно изменить itempath и itemversion здесь: searchCriteria.itemPath=/ConfigTrans.sln&searchCriteria.itemVersion.version=master

Я использовал /ConfigTrans.sln и master, потому что у меня был этот файл в root каталоге master ответвление:

enter image description here

Вам необходимо заменить вышеуказанный элемент файлом, который вы хотите проверить.

3. Ответ этого API содержит несколько коммитов, связанных с этим конкретным файлом, информацию о создателе и информацию о последнем коммиттере можно найти в ответе.

Пример ответа :

{
    "count": 2,
    "value": [
        {
            "commitId": "xxx",
            "author": {
                "name": "xxx@outlook.com",
                "email": "xxx@outlook.com",
                "date": "2020-04-08T04:51:36Z"
            },
            "committer": {
                "name": "xxx@outlook.com",
                "email": "xxx@outlook.com",
                "date": "2020-04-08T04:51:36Z"
            },
            "comment": "Updated ConfigTrans.sln",
            "changeCounts": {
                "Add": 0,
                "Edit": 1,
                "Delete": 0
            },
            "changes": [
                {
                    "sourceServerItem": "/ConfigTrans.sln",
                    "changeType": "edit"
                }
            ],
            "url": "xxx",
            "remoteUrl": "xxx"
        },... 
        {
            "commitId": "xxx",
            "author": {
                "name": "xxx",
                "email": "xxx@outlook.com",
                "date": "2020-04-07T09:16:33Z"
            },
            "committer": {
                "name": "xxx",
                "email": "xxx@outlook.com",
                "date": "2020-04-07T09:16:33Z"
            },
            "comment": "Add project files.",
            "changeCounts": {
                "Add": 6,
                "Edit": 0,
                "Delete": 0
            },
            "changes": [
                {
                    "sourceServerItem": "/ConfigTrans.sln",
                    "changeType": "add"
                }
            ],
            "url": "xxx",
            "remoteUrl": "xxx"
        }
    ]
}

Вы можете легко найдите человека, который создал файл, и человека, который сделал последнее изменение. Надеюсь, это поможет:)

...