我有三台计算机 A、B 和 C。我可以在任意两台计算机之间进行 ssh,无需密码。从 A 和 B 我可以将提交推送到 GitHub,而无需输入名称或密码。在 C 上,它总是要求两者。我已经完成了 ssh git@github.com 并且我得到了我已经通过身份验证的消息,但是,当然,它不支持命令行访问。我已将相同的 .gitconfig 文件从 A 复制到 B 和 C,以确保它们使用相同的用户名、 key 访问文件和帮助程序。我复制了 .ssh/id_rsa.pub 文件内容,并将其作为 GitHub 上的 ssh key 添加到我的帐户中。
我很困惑,不知道下一步该看什么。我还缺少其他设置或配置吗?
最佳答案
首先检查 C 上的远程 URL:
cd /path/to/repo
git remote -v
如果您看到以 HTTPS 开头的 URL,则可能未设置凭据帮助程序 (git config credential.helper),因此请求用户名/密码。
SSH 根本不会参与。
您还可以切换回 C 上的 SSH URL:
cd /path/to/repo
git remote set-url origin git@github.com/<you>/<yourRepo>
关于Git 总是在三台计算机中的一台上询问用户名和密码。其他两个不问。我如何找到原因?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60916166/