python - 使用带有 gitpython 的 HTTPS 克隆私有(private)仓库

标签 python git gitpython

我正在使用 gitpython 通过 HTTPS 克隆一个 git 存储库。如果项目是私有(private)仓库,它会提示输入用户名和密码。如何以 Python 方式与提示交互以传递用户名和密码变量?

from git import Repo

HTTPS_REMOTE_URL = 'https://github.com/username/private-project'
DEST_NAME = 'https-cloned-private-project'
cloned_repo = Repo.clone_from(HTTPS_REMOTE_URL, DEST_NAME)

运行此代码的输出:

$ python example.py
Username for 'https://github.com': example
Password for 'https://example@github.com': 

我知道可以在 URL 中包含用户名和密码:

HTTPS_REMOTE_URL = 'https://username:password@github.com/username/private-project'

但是,我无法提前知道这是否是私有(private)仓库。

最佳答案

当使用 github 访问 token 而不是可能需要 2FA 的用户名和密码时,它对我有用:

HTTPS_REMOTE_URL = 'https://<access_token>:x-oauth-basic@github.com/username/private-project'

关于python - 使用带有 gitpython 的 HTTPS 克隆私有(private)仓库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36358808/

相关文章:

python - 基于每行类别的 pandas 样本

git - 更改所有全局设置

git - 在尚未 merge 上次提交的同一分支上创建新的 pull 请求

python - 使用 GitPython 从远程存储库中克隆所有分支的存储库

gitpython - 找出是否在 gitpython 中将更改推送到原点

Python 和 MySQL - 数字类型有限?

python - 如何隐藏 Chromedriver 控制台窗口?

python - 理解 Python 中的导入器协议(protocol)时遇到问题

git - Powershell 在加载 ssh-agent/git 时需要很长时间才能启动

python - 使用 gitpython lib 在 python 脚本中运行时 git pull 命令失败,但直接通过 shell 运行时成功。