我正在使用 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/