我正在尝试使用 python 从 git 中提取文件,但它不起作用。下面是我使用的代码:
import git
git.cmd.Git().pull('https://github.com/User/repo','master')
它要求进行身份验证,然后终止。
有人可以在这里帮助我吗?这段代码有什么问题?
第一步是创建一个git.Repo
对象来表示您的存储库。
from git import Repo
# rorepo is a Repo instance pointing to the git-python repository.
# For all you know, the first argument to Repo is a path to the repository
# you want to work with
repo = Repo(self.rorepo.working_tree_dir)
assert not repo.bare
在上面的示例中,目录self.rorepo.working_tree_dir
等于/Users/mtrier/Development/git-python
并且是包含该.git
目录的我的工作存储库。您还可以GitPython
使用裸存储库进行初始化。
这就是你要求的:
repo = git.Repo('repo_name')
o = repo.remotes.origin
o.pull()
这取决于您的操作系统,但您应该使用凭证助手来缓存密码(或令牌,如果您已激活 2FA)。
这是假设您正在尝试从私有存储库中提取。
例如,在 Windows 上,这将是“ manager
”,您可以使用git credential fill
.