gpt4 book ai didi

git - 在 2 个日期时间之间在 Azure DevOps 中使用 Get Commit API 时,它返回的结果比预期多吗?

转载 作者:行者123 更新时间:2023-12-03 03:22:36 24 4
gpt4 key购买 nike

我正在尝试获取与 azure devops 上两个日期之间所做的一些提交相关的一组工作项。我用来检索这些工作项的 API 如下:

https://learn.microsoft.com/en-us/rest/api/azure/devops/git/commits/get-commits?tabs=HTTP

这是我用来获取提交集的 URL:

"https://dev.azure.com/$organization/$project/_apis/git/repositories/$repository/commits?searchCriteria.fromDate=$baselineCommitDate&searchCriteria.toDate=$latestCommitDate&searchCriteria.includeWorkItems=$true&api-version=6.1-preview.1"

URL 中的变量是 PowerShell 变量,如下所示:$组织$项目$存储库$baselineCommitDate,和$latestCommitDate

值得注意的是,日期需要采用美国格式,即 MM/DD/YYYY,如以下示例 06/12/2023 12:41 PM 是 2023 年 6 月 12 日。

无论如何,当我尝试在 Powershell 脚本中运行此 API 调用并填充变量时,我得到的结果比预期更多。从我指定的日期到现在,我得到了 100 个结果,而我本应得到 60 个结果。

还有其他人在使用此 API 时遇到困难吗?

最佳答案

注意:

  • 鉴于文档没有描述所需的格式,仅提供示例,目前尚不清楚下一节中描述的差异是否重要。 (如果有人知道在哪里可以找到描述,请告诉我们。)

  • 可以想象 - 并且希望(我自己无法验证这一点) - (也)接受不同日期/时间格式,例如国际ISO 8601基于 - 的响应,如 JSON 响应 中所使用的(例如 2018-06-15T17:06:53Z)

    • 为此,您需要在 [datetime] 上显式调用 .ToUniversalTime().ToString('u').Replace(' ', 'T') ] 实例根据 standard u format specifier 生成所需的字符串格式.

    • 简化示例(请注意,需要将链式方法调用括在 $(...) 中,即 subexpression operator ):

      "...Date=$($baselineCommitDate.ToUniversalTime().ToString('u').Replace(' ', 'T'))"
<小时/>
  • 正如您所说,examples in the docs建议应使用美国英语日期/时间字符串格式,例如2023 年 7 月 3 日上午 9:44:29

  • 但是,请注意 PowerShell 的字符串插值,即在 "..." 中嵌入变量引用(expandable string)不会 使用此格式:

    • PowerShell 的字符串插值具有文化不变性:它使用 [cultureinfo]::InvariantCulture 的规则,虽然基于美国英语文化,但有一些差异,特别是使用24小时时间格式而不是使用AM/PM 后缀,并使用默认格式的 2 位数字、0 填充的月份和日期。

    • 要生成美国英语格式,请在 [datetime] 实例上调用 .ToString([cultureinfo] 'en-US'),作为以下示例显示:

      $baselineCommitDate = Get-Date
      "
      String interpolation: $baselineCommitDate
      vs.
      US-English format: $($baselineCommitDate.ToString([cultureinfo] 'en-US'))
      "
      • 输出如下:

        String interpolation: 07/03/2023 10:01:22
        vs.
        US-English format: 7/3/2023 10:01:22 AM

关于git - 在 2 个日期时间之间在 Azure DevOps 中使用 Get Commit API 时,它返回的结果比预期多吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/76604189/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com