我是使用 git 的新手。每次我想将我的文件推送到 github 时,它总是向我显示输入密码的通知。例如:“https://username@bitbucket.org”的密码
我希望我的 git 为我记住密码。我应该如何在 Windows 7 上做到这一点?我已经在这里阅读了帮助页面https://help.github.com/articles/set-up-git
我是使用 git 的新手。每次我想将我的文件推送到 github 时,它总是向我显示输入密码的通知。例如:“https://username@bitbucket.org”的密码
我希望我的 git 为我记住密码。我应该如何在 Windows 7 上做到这一点?我已经在这里阅读了帮助页面https://help.github.com/articles/set-up-git
如果您按照 Github 上的说明进行操作,请注意这一行。
很高兴知道:凭据帮助程序仅在您克隆 HTTPS 存储库 URL 时起作用。如果您改用 SSH 存储库 URL,则使用 SSH 密钥进行身份验证。
您正在使用 ssh,因此 git 凭证助手无法正常工作。你有几个选择。
ssh 问题并非特定于 git。您可以设置一个 ssh-agent,这样您只需输入一次 ssh 密钥密码。它将被记住,安全地存储在内存中,直到您注销。 Github 有一个关于设置 ssh-agent 的教程。
无论您选择哪个选项,我都强烈建议您花时间设置 ssh-agent。SSH 是如此有用且如此广泛,您将再次遇到这个问题。
而不是从克隆,git@github.com:username/my-repo.git
您可以从https://github.com/username/my-repo.git
. 它是http
您的项目页面上的按钮。然后 github 文档中描述的 git credential helper 将起作用。您可能必须先安装它,或者使用他们的 Github 应用程序。这一切都在Github on Windows 设置指南的密码缓存部分中进行了描述。
该指南提到他们现在有一个 Github 应用程序,它可能会为你解决这个问题。然而,这只是一个权宜之计,因为其他 git 服务器不会有这样的东西。
github 允许两种不同的方法访问您的存储库:https 和 ssh。
在您问题的第一个版本中,您将 git 配置为通过 ssh 访问 github。因此 git 调用 ssh 尝试读取您的密钥并询问您 ssh 密钥的密码。
当您创建您的 ssh 密钥时,您可以通过密码来保护它或决定不这样做。
如果您决定输入密码,那么您要么必须在每次要使用密钥时输入密码(即推送、获取等),要么可以使用 ssh-agent。在最后一种情况下,您只需在将密钥添加到代理时输入一次密码。之后,代理将为您完成所有授权。
在 Windows 上,您可以使用 PuTTY 工具来管理您的密钥: http: //www.chiark.greenend.org.uk/~sgtatham/putty/download.html
您可以使用它puttygen
来生成新密钥或更改现有密钥。(例如删除密码)
您可以pagent
用作 ssh 代理。启动后它将驻留在通知区域。单击图标以添加您的密钥。
一旦您的代理知道了密钥,就不应再要求您提供 ssh 密码。