我最近通过Cygwin在Win10上建立了一个git存储库,现在我试图让它在github上跟踪一个远程仓库。
问题是,在添加这样的遥控器之后:
git remote add github-remote git@github.com:username/github-remote.git
我无法以任何可能的方式访问它(通过' show'推送,提取,显示附加信息)。我得到的只是:
git@github.com:权限被拒绝(公钥)。
致命:无法从远程存储库中读取。
请确保您拥有正确的访问权限和存储库 存在。
虽然我知道这个话题经过了很多讨论,但我找到的解决方案实际上都没有帮助。这就是我决定发布另一个问题的原因。
以下是我的所作所为,一步一步:
1)生成pub-priv密钥对:
ssh-keygen -t rsa -b 4096 -C "mymail@ex.com"
尝试了两者 - id_rsa文件的默认目录和自定义目录。相同的结果。
2)运行ssh代理(或者确切地检查它是否运行):
eval $(ssh-agent -s)
3)向代理商添加了密钥
ssh-add ~/.ssh/id_rsa
4)将id_rsa.pub复制到github
5)检查连接是否正确设置
ssh -T git@github.com
......结果很有希望
您已成功通过身份验证,但GitHub不提供shell 访问。
据我所知,这个错误可能是因为git的地址没有包含在/.ssh/known_hosts文件中。事情是(据我所知),它是自动插入的,例如用' ssh -T'所以我也怀疑它是这样的。虽然尝试了这个:
ssh-keyscan -t rsa github.com | ssh-keygen -lf -
另一个可能的问题可能是我的私钥访问对于用户来说太广泛了,但我也检查了它。
尽管如此,我还没有进一步了解如何解决这个问题,所以我很感激任何帮助。提前谢谢。
答案 0 :(得分:2)
至于git,我从git-scm.com/download/win下载了.exe。另一方面,我必须安装SSH作为Cygwin的软件包,它是Cygwin的薄荷,我运行所有命令......
混合Cygwin和Git For Windows可能是个问题。虽然我确信有一种方法可以让它们发挥作用,但最简单的方法就是坚持使用其中一种。
Git For Windows附带了自己的" Git Bash"壳,我相信,ssh。使用它。
或者,如果你想坚持使用Cygwin,get Git from from Cygwin并使用它。