使用idea操作git(ssh协议)



问题


我们发现,使用IDEA上的git功能,当使用ssh协议出现了可以commit但无法push和pull的问题,经过测试发现原因是Could not read from remsitory。直接翻译是 “远程仓库无法读取”。


在这里插入图片描述


为什么会无法读取呢?(ssh权限问题)

  1. 无法链接服务器?

    可是,确认是可以连上服务器的。(保证连接github服务器)

  2. IDEA中git集成中使用的ssh方式问题

    在网上看到,在Settings->Version Control->Git中,将SSH executable设置为Native即可,如图,红色方框中是要修改的地方。

在这里插入图片描述


在解决问题的过程中看到stackoverflow中是让更改“SSH executable” 方式为 Native,但仅仅这样是无效的 …

  1. 无法通过SSH的链接验证

    所以可以通过创建ssh key 并将产生的id_rsa.pub的内容加到github的后台就可以解决问题了。

(1)产生key,在这个过程 中,可以添加“你的github账号名”


ssh-keygen -t rsa -C “你的github帐号名或者邮箱”`

eg:输入:ssh-keygen -t rsa -C “[email protected]


在这里插入图片描述


生成过程采用默认方式,直接按enter键到生成id_rsa,id_rsa.pub

将生成的id_rsa.pub中的内容添加到相应的git服务器,需要放置到个人帐号中的仓库里

注意:这里需要重新生成key!!!!!

(2)加key

首先创建仓库mytest_ssh


在这里插入图片描述


最后,对mytest_ssh进行可写操作,并添加公钥的key

在mytest_ssh仓库中选择settings,添加add deploy key


在这里插入图片描述


(1):添加公钥的key

(2):勾选允许可写操作


在这里插入图片描述


添加完成:


在这里插入图片描述


如果报错说,当前key已经存在,需要删除


在这里插入图片描述


push命令


创建git_day01_demo工程,测试push到远程仓库,即可:


注意,在使用ieda进行SSH协议上传的时候,保证在.ssh文件中存在known_hosts文件,这样才可以进行交互,否则权限会依然不足


在这里插入图片描述


可以使用:git bush


在这里插入图片描述


clone命令


选择VCS—>Checkout from Version Control—>GitHub


在这里插入图片描述


使用ssh协议


在这里插入图片描述


此处使用ssh形式的url,点击“test”按钮后显示连接成功


点击OK按钮后根据提示将远程仓库克隆下来,然后导入到idea中


在这里插入图片描述


这里点击“No”,我们再使用idea导入目录下的项目即可。


在这里插入图片描述


使用idea–>Open


在这里插入图片描述


pull命令


在这里插入图片描述


使用pull命令


在这里插入图片描述


Could not read from remote repository 的解决办法

https://blog.csdn.net/Leolu007/article/details/79129446

猜你喜欢

转载自blog.csdn.net/m0_67559541/article/details/127019351