Estoy usando gitpython para clonar un repository git a través de HTTPS. Si el proyecto es un repository privado, pedirá el nombre de usuario y la contraseña. ¿Cómo interactúo con el aviso pythonicamente para pasar variables de nombre de usuario y contraseña?
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)
Salida de ejecutar este código:
$ python example.py Username for 'https://github.com': example Password for 'https://example@github.com':
Sé que es posible include el nombre de usuario y la contraseña en la URL:
HTTPS_REMOTE_URL = 'https://username:password@github.com/username/private-project'
Sin embargo, no tengo forma de saber con anticipación si se trata de un repository privado.
me funciona cuando uso token de acceso github en lugar de nombre de usuario y contraseña donde se puede requerir 2FA:
HTTPS_REMOTE_URL = 'https://<access_token>:x-oauth-basic@github.com/username/private-project'