python - 为 GitPython 中的 "git push"命令提供密码

标签 python git repository

在 Python 中,使用 GitPython ,我需要 git push 到 BitBucket 上的 HTTPS 远程存储库。

运行repo.git.push() 命令后,它将返回-如预期-:

bash: /dev/tty: No such device or address

error: failed to execute prompt script (exit code 1)

fatal: could not read Password for 'https://username@bitbucket.org': Invalid argument'

但是 Python 不会像在控制台中那样给我输入密码的任何更改。

如何将密码“附加”到 git push 命令或如何在 Python 中模拟控制台密码输入?

重要的是要注意,不幸的是,使用 SSH 不是替代方案(脚本不应该要求接收它并想要 git push)。我希望将密码“附加”到命令中或在命令中“模拟”文本输入。

最佳答案

您试图绕过安全措施。

您需要创建一对 ssh key 。

然后,登录到您的 bitbucket 帐户的网站并上传您的公钥。

将您的 key 存储在您的 ~/.ssh 目录中。

设置 key 后,系统将不再提示您输入密码。

以下是有关使用 SSH key 的更多信息:https://help.github.com/articles/generating-an-ssh-key/

关于python - 为 GitPython 中的 "git push"命令提供密码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36074130/

相关文章:

python - 为什么我的生成器总是返回相同的值?

git - 如何丢弃 Git 中的本地提交?

java - 是否可以使用Alfresco作为JCR框架?

SVN : 500 internal server error on my repository access

python3 linux - 检测没有root按下的键盘键

python - 给定一个 python .pyc 文件,是否有一个工具可以让我查看字节码?

git - 如何解决与 git 命令行的冲突以保持目标(Visual Studio 2019)?

maven - 如何强制 Maven 使用本地存储库而不是前往远程存储库来检索 Artifact ?

python - 在 pandas 数据框中重新采样 Hz

git克隆一个与我的linux用户不同的用户的存储库