由于我有新版本,它不再问我在ssh密钥文件中设置的密码。
每当我每次推送时,它都会直接询问github用户名和密码。
这是git的新功能还是过去改变了它还是github上有什么变化?
我尝试使用ssh以及我的ssh密钥文件中的电子邮件和密码进行身份验证,但它确实有效。
GitHub已更改为smartftp,并且还更改了设置回购的说明
https://github.com/blog/1104-credential-caching-for-wrist-friendly-git-usage
https://help.github.com/articles/create-a-repo
稍后看到,他们现在使用https而不是默认的git协议
答案 0 :(得分:5)
前几天,当我从GitHub上的新存储库说明中剪切并粘贴时,我遇到了这个问题。有人应该提交错误报告,因为它让我认识的几乎每个人都感到困惑。
问题是指令告诉您创建使用https协议的远程,而不是git协议。我通常使用:
github_username=CodeGnome
git remote add origin "git@github.com:${github_username}/${PWD##*/}.git"
git push --tags --set-upstream origin master
从预先存在的本地存储库中填充新的GitHub存储库。
答案 1 :(得分:3)
git config --global credential.helper cache
git config --global credential.helper 'cache --timeout=3600'
您只需先输入您的用户名和密码;在3600s或1小时后,您无需输入用户名和密码。
超时你可以设置你的号码。
答案 2 :(得分:2)
使用https地址,您有另一个选项(password caching旁边):
使用_netrc
文件,其中包含您的用户名和密码,在HOME
(或.netrc
用于bash会话)。
请注意,Windows默认情况下未定义HOME。
machine github.com
login <login_github>
password <password_github>
另请参阅“Git - How to use .netrc
file on windows to save user and password”。
(“Syncing with github”的其他选项)