故障排除git推 – 它要求一个用户/通行证

我在新的git linux电脑上使用git。 当我做git push ,我要求用户/密码。

我已经正确地设置了git,实际上从github克隆回购到一个新的文件夹完美地工作(使用我的公钥,而不是只读副本)。 当我尝试从以前的克隆推送到相同的回购时,系统会提示您input用户名/密码。

当然siting到git@github.com工作,我确保我的公钥在github中configuration。 任何想法如何继续debugging?

以前的回购是什么意思? 检查以前的repo的.git/config文件的来源url。 如果你使用http进行克隆,它会要求用户/通行证。

这是因为你做的

 git clone https://github.com/username/repo 

代替

 git clone git@github.com:username/repo.git 

尝试以下操作:

git remote set-url origin [你的git url,比如git@github.com:… / project.git]

如果您的回购url是: https://github.com/abc/xyz.githttps://github.com/abc/xyz.git

从命令行设置URL为: git remote set-url origin git@github.com:abc/xyz.git

git@github.com:replacehttps://github.com/ git@github.com:

对于Mac如果你有git 1.7.10+它需要使用凭证-osxkeychain进行密码caching。 这是一个很好的解释:

https://help.github.com/articles/set-up-git