当前位置:   article > 正文

无需克隆整个仓库,下载Github特定文件夹内的文件_git不需要克隆仓库下载远端文件

git不需要克隆仓库下载远端文件

注意:此方法对Git-LFS方式上传的文件可能无效!!!

一.打开PowerShel运行命令

在 Windows 中,可以通过以下步骤打开 PowerShell 终端:

  1. 使用搜索功能:

    • 点击 Windows 按钮(开始菜单左下角的 Windows 图标)。
    • 在搜索框中键入 "PowerShell" 或 "Windows PowerShell"。
    • 在搜索结果中,选择 "Windows PowerShell" 或 "Windows PowerShell ISE"。
  2. 使用菜单:

    • 右键点击 Windows 按钮(开始菜单左下角的 Windows 图标)。
    • 选择 "Windows PowerShell" 或 "Windows PowerShell ISE"。
  3. 使用运行命令:

    • 按下 Win + R 组合键,打开运行对话框。
    • 键入 powershellpowershell_ise,然后按 Enter 键。

二.下载仓库文件

2.1下载公开仓库文件

  1. $owner = " Your owner"
  2. $repo = "Your  repo"
  3. $branch = "Your branch"
  4. $path = "Your path"
  5. # API 请求 URL
  6. $url = "https://api.github.com/repos/$owner/$repo/contents/$path?ref=$branch"
  7. # 发送 API 请求
  8. $response = Invoke-RestMethod -Uri $url
  9. # 下载文件
  10. foreach ($file in $response) {
  11.     $fileUrl = $file.download_url
  12.     $fileName = $file.name
  13.     Invoke-WebRequest -Uri $fileUrl -OutFile $fileName
  14. }
  15. Write-Host "Files downloaded successfully."

假设下载HITCSLab2仓库master分支下的文件夹"概率论论文",并将文件放到D:\111中,示例如下:

即可下载成功。

如果你想要使用 Python 脚本下载 HITCSLab2 仓库下的文件夹 概率论论文,你可以使用 requests 库。确保你已经安装这个库:

pip install requests

然后,你可以使用以下 Python 脚本:

  1. import requests
  2. import os
  3. # 仓库信息
  4. owner = "HITCSzwx"
  5. repo = "HITCSLab2"
  6. branch = "master"
  7. path = "概率论论文"
  8. # GitHub API 请求 URL
  9. url = f"https://api.github.com/repos/{owner}/{repo}/contents/{path}?ref={branch}"
  10. # 发送 API 请求
  11. response = requests.get(url)
  12. response.raise_for_status() # 检查请求是否成功
  13. # 下载文件
  14. for file in response.json():
  15. file_url = file["download_url"]
  16. file_name = os.path.join(path, file["name"])
  17. file_response = requests.get(file_url)
  18. file_response.raise_for_status()
  19. with open(file_name, "wb") as f:
  20. f.write(file_response.content)
  21. print(f"Files from '{path}' downloaded successfully.")

这个脚本使用 Python 中的 requests 库,通过 GitHub API 获取指定仓库、分支和文件夹路径下的文件列表,并下载这些文件到当前目录。确保替换脚本中的 ownerrepobranchpath 等参数为你的实际值。

请记得在运行脚本之前安装 requests 库。

 2.2下载私有仓库文件

  1. $owner = "HITCSzwx"
  2. $repo = "HITCSLab2"
  3. $branch = "master"
  4. $path = "概率论论文"
  5. # GitHub Personal Access Token
  6. $token = "<YOUR_ACCESS_TOKEN>"
  7. # API 请求 URL
  8. $url = "https://api.github.com/repos/$owner/$repo/contents/$path?ref=$branch"
  9. # 设置请求头
  10. $headers = @{
  11. Authorization = "Bearer $token"
  12. Accept = "application/vnd.github.v3.raw"
  13. }
  14. # 发送 API 请求
  15. $response = Invoke-RestMethod -Uri $url -Headers $headers
  16. # 下载文件
  17. foreach ($file in $response) {
  18. $fileUrl = $file.download_url
  19. $fileName = $file.name
  20. Invoke-WebRequest -Uri $fileUrl -OutFile $fileName
  21. }
  22. Write-Host "Files downloaded successfully."

对于token怎么获得

  1. 在 GitHub 上,登录到你的账户。

  2. 点击右上角的头像,然后选择 "Settings"(设置)。

  3. 在左侧导航栏中,选择 "Developer settings"(开发者设置)。

  4. 在 "Personal access tokens"(访问令牌)部分,点击 "Generate new token"(生成令牌)。

  5. 在 "Note" 字段中,为你的令牌提供一个描述性的名称,以便日后识别这个令牌是用于何种目的。

  6. 在 "Select scopes"(选择范围)部分,选择需要的权限。如果只是需要访问公共仓库,只需选择 "public_repo" 权限;如果需要访问私有仓库,还需选择 "repo" 权限。如果要访问私有仓库的 LFS 文件,还需要选择 "read:user" 和 "read:org"。

  7. 点击 "Generate token"(生成令牌)。

  8. 复制生成的令牌。请注意,这是你唯一的机会复制令牌,因为 GitHub 不会存储令牌的内容。

注意:此方法对Git-LFS方式上传的文件可能无效!!!  

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/神奇cpp/article/detail/1009642
推荐阅读
相关标签
  

闽ICP备14008679号