当前位置:  开发笔记 > 编程语言 > 正文

在Visual Studio代码上使用<git push>,但显示"无法从远程存储库读取".

如何解决《在VisualStudio代码上使用<gitpush>,但显示"无法从远程存储库读取".》经验,为你挑选了1个好方法。

我开始研究Git和GitHub.

现在,我可以创建我的存储库来练习,我可以在git bash上将提交推送到源存储库(在GitHub中).

但是当我试图推动Visual Studio Code时,我收到了这个错误

权限被拒绝(publickey).

致命:无法从远程存储库读取.

并且无法推送到原始存储库.

我已经使用git bash上的ssh密钥远程本地存储库到源存储库,我可以在本地存储库和源存储库之间完成推送和拉取.

在其他情况下,他们被要求GitHub凭据推送或同步,但在我的情况下,我不能被问到任何凭证,如ssh密钥.

在这种情况下,我该怎么办?谢谢.



1> mushcraft..:

我认为@codewizard的答案是正确的.似乎VS代码只使用'id_rsa.pub'键,它没有使用git.exe配置使用的其他ssh密钥对.(此密钥不是名称id_rsa.)但是在生成新的id_rsa密钥对后,我仍被许可拒绝(publickey).

我在这个博客文章中找到了我的答案,似乎vs代码没有ssh-agent进行交互?

http://blog.alner.net/archive/2015/08/24/vs_code_with_git_ssh_keys_that_use_passphrases.aspx

博客上的解决方案正在进行中

打开命令提示符.

运行"start-ssh-agent"并回答密码短语提示.

运行"代码"以从该环境启动VS代码.

我用git-bash
启动ssh代理: eval "$(ssh-agent -s)"
然后"code"启动VS Code

注意:正如@JoshuaH在评论中指出的那样,您可以创建一个Windows快捷方式来完成上述步骤. cmd /c start-ssh-agent & code

git fetch开始工作了.但是我每隔x分钟开始得到一个openssh密码短语框(不定时)

所以我再复查的关键是使用Git的bash再次添加
,然后"ssh-add ~/.ssh/id_rsa"
git config --global credential.helper wincred

如果每次都需要密码提示,则忽略前两个命令并在VS Code的设置中禁用自动提取.
"git.autofetch": "true"在VS代码设置中"git.autofetch": "false"


只需添加,您还可以创建一个窗口快捷方式,在目标中可以放置`cmd/c start-ssh-agent&code`
推荐阅读
个性2402852463
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有