当前位置:   article > 正文

【Linux】如何使用ssh密钥配置git_gitlinux配置ssh密钥

gitlinux配置ssh密钥

之前的腾讯云搭建Linux环境博客中包含了本文,但是由于在我的环境下SSH配置git无法多次生效。

为了避免误导,所以把这一部分单独成文,并删除原文中相关部分

22-06-19更新:问题已解决,可放心阅读本文!


1.创建SSH密钥

① 本地创建ssh密钥

输入这个语句(github啥的都是同理)

ssh-keygen -t rsa -C "你的gitee账户邮箱"
  • 1

执行这个命令,会弹出来让你输入一个文件名,直接连按3次回车跳过,不要做任何输入。

Enter file in which to save the key (/home/muxue/.ssh/id_rsa): id_rsa_用户名

Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
  • 1
  • 2
  • 3
  • 4

后面出现的passphrase语句直接回车跳过,出现下面这个就是配置好了

Your identification has been saved in id_rsa_用户名
……
#后面还有很多,还出现了一个文字组成的图片
  • 1
  • 2
  • 3

② 把SSH公钥添加到gitee/github账户上

直接cd .ssh进入隐藏文件夹,cat你刚刚生成的pub文件,将内容复制

cd .ssh
cat id_rsa.pub
  • 1
  • 2

你还可以使用Xftp打开刚刚创建的密钥文件,把里面生成的内容复制一份

image-20220619231202099


在gitee账户设置中找到SSH公钥,添加即可

image-20220506141953956

github同理

image-20220619175806351

③ 测试ssh连接

搞定密钥后,测试是否可以用ssh访问我们的远程仓库

ssh -T git@gitee.com
//github只需要把gitee改成github就行了
  • 1
  • 2

出现下面的就是成功了

image-20220506143052979

image-20220619231323491

④ 该方式有错误(已解决)

刚开始弄的时候,SSH方式不知为何,在我的云主机上,只有当次设置有效,重新打开终端连接云服务器(云服务器没有重启)SSH就会失效。

在我的Linux用户目录下以及我朋友的用户目录下都出现了这个问题

image-20220507135346748
22-06-19更新:在原先博客中,提到了下面这个本地添加ssh密钥的步骤

执行下面两个语句,添加你的ssh密钥到设置中。

ssh-agent bash
ssh-add ~/.ssh/id_rsa_用户名
  • 1
  • 2

image-20220506151855974

实际上,出现无法多次使用的问题,就是因为这莫须有的一步操作!

正确方法是:别执行这一步,就OK了!

如果你之前做了这一步,那就重新按上面的正确教程,创建一个ssh密钥。

2.克隆远程仓库

使用mkdir 文件夹名创建一个文件夹,CD进去后,克隆我们的远程仓库

git clone 远程仓库的ssh链接
  • 1

因为现在我们配置的是SSH方式,所以要使用SSH链接而不是https

image-20220506141709217

image-20220506142957835

克隆成功后,cd进入该目录,git status查看git仓库当前状态,应该是up-to-date的。

3.上传代码

随便创建一个新的文件,测试能否正常PUSH到远程仓库

这部分设计到git命令行操作,如果你不会,可以搜几篇git的博客学习一下

git add 文件夹 #添加需要上传的文件路径
git commit -m "输入push信息" #git push的信息
git push #和远程仓库同步
  • 1
  • 2
  • 3

image-20220506143259549

因为我们没有设置用户名和邮箱,所以出现了下面的报错

image-20220506143416580

用下面的两行命令,可以单独设置当前仓库的用户邮箱和用户名。如果需要全局设置,则依照上图中的操作,使用git config --global语句即可

git config  user.email "you@example.com"
git config  user.name "Your Name"
  • 1
  • 2

同时我们需要用下面的这个命令,设置让git默认push到当前分支上

git config --global push.default current
  • 1

image-20220506143620451

再次测试git push,成功!

image-20220506143711441

image-20220506143731076

有任何问题都可以在评论区提出哦!

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/IT小白/article/detail/414878
推荐阅读
相关标签
  

闽ICP备14008679号