我正在尝试从GitHub克隆许多项目,并且我一直在使用Python的“ git”库,因此:
from git import Repo, GitCommandError
foo = "owner/project"
clonePath = "/bar/baz/"
try:
Repo.clone_from("https://github.com/" + foo, clonePath + foo)
except GitCommandError as e:
print(e)
这非常好用,除非在某些情况下会移动项目(有时会在GitHub上发生):如果修改了项目标识符的“所有者”部分(例如,从“ owner”或“ newOwner”中获得),GitHub将自动重定向到“ newOwner / project” ...,但是库找不到该项目并返回错误。
在Python“ git”库中是否有处理这些重定向的方法?是否有其他库可以处理这些问题?
我知道我可以在克隆之前查询GitHub API以获取正确的所有者,但是我正在尝试最小化GitHub API调用(仅允许5k / hr),所以是否有另一种方式来处理此问题,我很想知道。