我最近通过Cygwin在Win10上建立了一个git仓库,现在我试图使其在github上跟踪一个远程仓库。
问题是,在添加了这样的遥控器之后:
git remote add github-remote [email protected]:username/github-remote.git
我无法以任何可能的方式访问它(按,显示,通过“显示”显示附加信息)。我所得到的是这样的:
[email protected]:权限被拒绝(公钥)。
致命:无法从远程存储库读取。
请确保您具有正确的访问权限,并且存储库存在。
尽管我知道这个话题已经讨论了很多,但是我发现的解决方案都没有帮助。这就是为什么我决定发布另一个问题。
这是我的逐步操作:
1)生成pub-priv密钥对:
ssh-keygen -t rsa -b 4096 -C "[email protected]"
尝试同时使用-id_rsa文件的默认目录和自定义目录。结果相同。
2)运行ssh代理(或精确地说,检查其是否在运行):
eval $(ssh-agent -s)
3)将密钥添加到代理
ssh-add ~/.ssh/id_rsa
4)将id_rsa.pub复制到github
5)检查连接设置是否正确
ssh -T [email protected]
...具有令人鼓舞的结果
您已经成功通过身份验证,但是GitHub不提供shell访问。
据我了解,此错误可能是由于git的地址未包含在/.ssh/known_hosts文件中。事情是(据我所知)它是自动插入的,例如用'ssh -T',所以我怀疑是这样。尽管也尝试过:
ssh-keyscan -t rsa github.com | ssh-keygen -lf -
另一个可能的问题可能是我的私钥访问权限对于用户而言过于广泛,但我也对此进行了检查。
综上所述,我不知道如何解决此问题,因此,我将不胜感激。先感谢您。
至于git,我从git-scm.com/download/win下载了.exe。另一方面,SSH我必须作为Cygwin的软件包安装,这是Cygwin的薄荷,我在其中运行所有命令...
混合Cygwin和Git For Windows可能是问题所在。虽然我敢肯定有一种方法可以使它们正常工作,但最简单的方法就是坚持一个或另一个。
Git For Windows带有自己的“ Git Bash”外壳,并且我相信ssh。用那个
或者,如果您想坚持使用Cygwin,请从Cygwin获得Git并使用它。
从Windows通过Cygwin运行Git也可能有用。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句