通过 AzureDevOps Services REST API 将二进制文件上传到 git LFS?

问题描述 投票:0回答:1

我正在使用 AzureDevOps Services REST API 进行自动化。我正在使用此 API add-a-binary-file 将二进制文件推送到我的存储库。

但是,这些二进制文件变得越来越大,我已经开始在我的项目中使用 git lfs。不过,我没有找到将文件上传到 git lfs 并通过 API 更新参考的方法。支持吗?如果可以的话我该怎么办?

我已经查看了文档,但没有找到任何完成此操作的示例。他们解释如何添加二进制文件的示例页面只是将图像直接上传到存储库中。

git azure-devops git-lfs
1个回答
0
投票

目前,没有 Azure DevOps Services REST API 可以将二进制文件上传到 Git LFS。

通常,我们可以通过安装客户端、为本地存储库上的文件设置 LFS 跟踪,然后将更改推送到 Azure Repos 来使用 Git LFS。如果需要自动化此过程,可以在脚本中使用 Git LFS 命令。这可能需要一些脚本来满足您的需求。

例如,在Azure DevOps中,您可以在脚本任务中运行

git lfs
命令将二进制文件上传到git LFS。

trigger:
- none

pool:
  vmImage: 'ubuntu-latest'

steps:
- checkout: self
  persistCredentials: true
- script: |
    git config --global user.email "[email protected]"
    git config --global user.name "Your Name"
    git checkout main
    # touch abc.largefile
    # echo "something" > abc.largefile
    echo "Adding large files to Git LFS"
    git lfs track "*.largefile"
    git add "*.largefile"
    echo "Committing changes"
    git add .gitattributes
    git commit -m "Track large files with Git LFS"
    echo "Pushing changes"
    git push origin main
    git show HEAD
© www.soinside.com 2019 - 2024. All rights reserved.