【问题标题】:VSTS Rest API for C# - How to return the full comments when getting a list of commits?VSTS Rest API for C# - 获取提交列表时如何返回完整评论?
【发布时间】:2018-10-31 15:58:14
【问题描述】:

下面的 API 方法返回所有 commitIds 的提交详细信息,但是 cmets 被截断,有没有办法为每个提交获取完整的 cmets,而不必为每个提交进行单独的 API 调用?

GetCommitsAsync(repositoryId, new GitQueryCommitsCriteria() { Ids = commitIds });

【问题讨论】:

    标签: c# azure-devops azure-devops-rest-api


    【解决方案1】:

    根据我的测试,我们无法使用GetCommitsAsync 方法获得完整的 cmets,没有参数来扩展注释长度,尤其是对于 Multi-line cmets(换行符)。

    当使用 REST API (Get Commits) 检索提交时,您可以看到 "commentTruncated": true,

    因此,即使使用 REST API,我们也无法获得完整的 cmets。已经有一个 user voice here 提交来建议该功能,但还没有计划。

    但是我们可以使用git log 命令来获取所有提交的完整 cmets:

    git log --first-parent > export.csv 
    

    您还可以将其格式化为每行显示一个提交:

    git log --first-parent --format="%h;%ci;%cn;%s;%N" > export.csv
    

    你也可以参考这个帖子:https://social.msdn.microsoft.com/Forums/en-US/587cedd4-ed32-421a-9aaf-4040c77ce1f5/tfs-git-api-commits-maxcommentlength-limited-to-100-chars-in-the-comments-today?forum=tfsgeneral

    【讨论】:

    • 我使用的是 C# Rest API,所以无法使用 git log 命令。我现在已经切换到不同的 API 方法,但我相信如果将参数添加到 GetCommitsAsync 以允许完整的 cmets 将很有用。
    猜你喜欢
    • 2017-03-29
    • 2019-02-06
    • 2020-05-23
    • 1970-01-01
    • 1970-01-01
    • 2017-09-12
    • 1970-01-01
    • 2014-03-20
    • 1970-01-01
    相关资源
    最近更新 更多