美文网首页
git无法clone,SSH key的问题

git无法clone,SSH key的问题

作者: 地坛公园 | 来源:发表于2018-09-12 22:56 被阅读0次

好惭愧,最近才开始正式的使用git,在前面的博文中,有记录过相关的笔记,但仅限于一些基本的概念和操作上,这里记当录下在使用过程中碰到的问题。

什么是SSH key:
在使用GIT与远程的服务器进行连接的时候,需要生成一个SSH key,他用于在你的计算机和远程服务器(gitlab,github....)建立一个

“安全的连接"(secure connection),这样你每次连接的时候,都不需要输入用户名密码,而且他比单纯的用户名密码机制更加的安全。

如何生成SSH key?
(这里我参考gitlab上的一篇指南)
在生成之前,我们要先看看系统 是不是已经生成过SSH key了,在控制台输入:

cat ~/.ssh/id_rsa.pub

如果你看到了一个很长的字符串,以ssh-rsa or ssh-dsa开头的,就说明你已经生成过了,就可以跳过这一步。


image.png

如果没有,你就需要去生成一个SSH key,打开git控制台,输入以下命令:

ssh-keygen -t rsa -C "xxx@xxx.com"

控制台会提示你指定路径和密码,可以直接按Enter回车键,默认选项。最好还是创建一个密码,这个密码
是不可以修改,不可找回的。所以一定要记住。

生成以后,使用上面的命令:

cat ~/.ssh/id_rsa.pub

来显示你的SSH key.

拷贝SSH key并部署(deploy)到你的profile中,从ssh-rsa开始到username+host结束,可以直接使用命令行,将
SSH key拷贝到剪切板:

windows:
clip < ~/.ssh/id_rsa.pub
Mac:
pbcopy < ~/.ssh/id_rsa.pub
GNU/Linux (requires xclip):
xclip -sel clip < ~/.ssh/id_rsa.pub

这样就可以啦!

有哪些工具可以使用git?

最开始都是用的git原生控制台,但是太低效了,总是要在各种命令之间切换,而且非图形化的东西看起来不够直观,但对于初学的我来说,通过git原生的形式,有助于自己更好的理解。

git有自己的GUI工具,但据说功能不多,不能很好的解决冲突问题,我没有具体尝试过,这里我最近接触到的就两款 :

1.TortoiseGit:

使用过SVN的,必须都知道这个,这是一位同事推荐的,但是这里无法直接使用SSH key,会报下面这样的错误:

git Couldn't load this key (OpenSSH SSH-2 private key)

有说修改成ssh.exe就可以了,但我这里尝试没有效果,还是传统的方法,需要通过puTTY进行转换成xxx.ppk,并在clone界面,进行配置,具体参见网址:
https://blog.csdn.net/weixin_42709585/article/details/81068100

image.png

生成以后,配置进来就可以了。

2.SourceTree

这款才是真正意义上的图形化git工具了,非常的直观,方便,使用起来也很简单,第一次使用要登录帐号,网上有贴子,修改配置文件可以直接跳过,配置如下:

image.png

在选项中,在Load Putty Key下,将生成的ppk文件放进去就好了。

注:
如果是在gitlab中使用,那么,你还需要将生成的SSH key 配置在gitlab的后台才可以。

就这么多,赶紧合并代码了!

image.png

(“年轻人” 镇楼)

相关文章

网友评论

      本文标题:git无法clone,SSH key的问题

      本文链接:https://www.haomeiwen.com/subject/tcfigftx.html