Git 通过命令行从Azure Devops下载应用程序

Git 通过命令行从Azure Devops下载应用程序,git,azure,tfs,azure-devops,devops,Git,Azure,Tfs,Azure Devops,Devops,我想通过命令行(比如使用powershell)从azure devops存储库下载一个应用程序,但我不能使用git插件。除了git之外,还有其他方法可以做到这一点吗?最好也是最简单的选择: 步骤1:设置VSTS代理。 步骤2:创建构建管道(直到最近才被称为定义) 如果你在这方面需要帮助,请告诉我 如果您只想使用命令行工具,则可以参考- 您可以使用Azure DevOps Rest API(无Git插件)从Git存储库下载文件 如果添加参数download(例如:?path={path}&down

我想通过命令行(比如使用powershell)从azure devops存储库下载一个应用程序,但我不能使用git插件。除了git之外,还有其他方法可以做到这一点吗?

最好也是最简单的选择:

步骤1:设置VSTS代理。 步骤2:创建构建管道(直到最近才被称为定义)

如果你在这方面需要帮助,请告诉我

如果您只想使用命令行工具,则可以参考-


您可以使用Azure DevOps Rest API(无Git插件)从Git存储库下载文件

如果添加参数
download
(例如:
?path={path}&download=true
),文件将被下载

因此,您可以使用PowerShell脚本获取文件:

Param(
   [string]$organization= "<Organization-NAME>",
   [string]$projectName = "<PROJECT-NAME>",
   [string]$repoId= "<Repository-ID>",
   [string]$appPath= "<Application-Path>",
   [string]$user = "",
   [string]$token = "<PERSONAL-ACCESS-TOKEN>"
)

# Base64-encodes the Personal Access Token (PAT) appropriately
$base64AuthInfo = [Convert]::ToBase64String([Text.Encoding]::ASCII.GetBytes(("{0}:{1}" -f $user,$token)))

$uri = "https://dev.azure.com/$($organization)/$($project)/_apis/git/repositories/$($repoId)/items?path=$($appPath)&download=true&api-version=5.0-preview.1"

$result = Invoke-RestMethod -Uri $uri -Method Get -ContentType "application/json" -Headers @{Authorization=("Basic {0}" -f $base64AuthInfo)}
Param(
[字符串]$organization=“”,
[字符串]$projectName=“”,
[字符串]$repoId=“”,
[字符串]$appPath=“”,
[字符串]$user=“”,
[字符串]$token=“”
)
#Base64对个人访问令牌(PAT)进行适当编码
$base64AuthInfo=[Convert]::ToBase64String([Text.Encoding]::ASCII.GetBytes((“{0}:{1}”-f$user,$token)))
$uri=”https://dev.azure.com/$($organization)/$($project)/_api/git/repositories/$($repoId)/items?path=$($appPath)&download=true&api version=5.0-preview.1“
$result=Invoke RestMethod-Uri$Uri-Method Get-ContentType“application/json”-Headers@{Authorization=(“基本{0}”-f$base64AuthInfo)}

谢谢大家,我通过一些小改动解决了这个问题,我没有在url中使用git,而是将$uri参数改为:

$uri = "<Azure URL>/<RepoID>/_apis/tfvc/Items?path=<ApplicationPath>&versionDescriptor%5BversionType%5D=5&%24format=zip&api-version=4.1-preview.1"
$uri=“//\u api/tfvc/Items?path=&versionDescriptor%5BversionType%5D=5&%24format=zip&api version=4.1-preview.1”
检查此项:-
$uri = "<Azure URL>/<RepoID>/_apis/tfvc/Items?path=<ApplicationPath>&versionDescriptor%5BversionType%5D=5&%24format=zip&api-version=4.1-preview.1"