使用 PyGitHub 在特定提交处获取回购的所有文件内容
Get all the file Contents of a repo at Specific Commit using PyGitHub
我想使用 Python [PyGitHub API] 获取存储库中所有文件的文件内容 [已更改和未更改]。但不确定如何实现它。简单地说,浏览历史上特定提交 ID 的回购。
是否还有其他API可以获取所需的数据?或者可以使用 PyGitHub 本身来完成。
注意:我使用的是 Github API v3。
如果您下载的文件不是太大(超过 1MB),如 PyGithub/PyGithub/issue 661 所示,想法是:
- 在特定提交时请求存储库内容
- 获取第一次调用返回的文件
即:
contents = repository.get_dir_contents(urllib.parse.quote(server_path), ref=sha)
然后:
for content in contents:
if content.type != 'dir':
file_content = repository.get_contents(urllib.parse.quote(content.path), ref=sha)
// or
file_content = repository.get_git_blob(content.sha)
我想使用 Python [PyGitHub API] 获取存储库中所有文件的文件内容 [已更改和未更改]。但不确定如何实现它。简单地说,浏览历史上特定提交 ID 的回购。
是否还有其他API可以获取所需的数据?或者可以使用 PyGitHub 本身来完成。
注意:我使用的是 Github API v3。
如果您下载的文件不是太大(超过 1MB),如 PyGithub/PyGithub/issue 661 所示,想法是:
- 在特定提交时请求存储库内容
- 获取第一次调用返回的文件
即:
contents = repository.get_dir_contents(urllib.parse.quote(server_path), ref=sha)
然后:
for content in contents:
if content.type != 'dir':
file_content = repository.get_contents(urllib.parse.quote(content.path), ref=sha)
// or
file_content = repository.get_git_blob(content.sha)