GitPython通过HTTPS

时间:2017-09-25 15:04:47

标签: python git python-2.7 gitlab gitpython

我目前正在尝试使用HTTPS通过GitPython推送到Git。我能够成功完成此操作,但系统会提示我输入每次提取,推送和拉取操作的用户名和密码。

我希望将我的用户名和密码作为命令行参数输入,因为我的脚本会进行一些git交互。这个仓库可能会在40多台服务器上作为配置管理的方法,我不想设置所有的SSH密钥,特别是因为它通常会用在非我自己的主机上的用户身上。 / p>

有没有人知道如何从python脚本获取shell的上下文,以编程方式输入我的用户名和密码(它们已经在我的代码中作为命令行中的变量)或者将我的用户名和密码传递给GitPython的方法shell提示永远不会发生?

git_repo = Repo.init(repo_dir)

origin = git_repo.remote('origin')

origin.fetch() # Shell prompted here for username and password

git_repo.heads.dev.checkout()

origin.pull() # Shell prompted here for username and password

git_repo.git.add([added_filename])
git_repo.git.commit(commit_message)

origin.push() # Shell prompted here for username and password

0 个答案:

没有答案