Android Studio中通过SSH Key上传代码到Github
GitHub中的SSH配置
我们在日常开发中请求登录后,服务端会根据登录信息生成一个该用户的唯一标识,如sessionId
或者token
,后续客户端请求其他接口时,只需要将该标识传给服务端即可,而不用每次再重新登录。
类似的,如果往Github
上push
项目的时候,不想每次都输入账号密码,那么就可以采用 SSH
的方式,只需要在Github
自己账号下配置一个SSH Key
即可!
一 检查SSH Key信息
在控制台打开ssh
目录:
cd ~/.ssh
然后输入ls
命令查看该目录下是否有文件,如在我的电脑中:
因为我之前生成过,所以这里直接列出了之前生成的SSH Key
,其中id_ed25519
是私钥,id_ed25519.pub
是公钥。通过open ~/.ssh
命令打开该目录,可以看到对应文件:
二 生成SSH Key信息
上一节是存在SSH Key
的情况,如果之前没有生成过,则需要我们先生成一下:
ssh-keygen -t ed25519 -C "xxx@xxx.com"
- t :指定要使用的密钥算法类型,可选
dsa | ecdsa | ed25519 | rsa
非对称加密算法其中的一种。 - C : 用于在生成的
SSH
密钥文件中添加注释信息,方便用户识别和管理,这个注释信息会被添加到生成的SSH
密钥文件的结尾处,一般使用Email
邮箱来添加注释信息。
现在我把之前的.ssh
目录下的签名信息全部删除,重新生成一遍,如执行下面的命令:
ssh-keygen -t ed25519 -C "504091986@qq.com"
一路点击回车,执行结果:
这样会在 .ssh
目录重新生成两个文件:id_id_ed25519
和id_id_ed25519.pub
其中id_id_ed25519
文件是私有密钥,id_id_ed25519.pub
是公开密钥。
三 获取SSH Key里的公钥内容
执行下面的命令:
cat ~/.ssh/id_ed25519.pub
执行结果:
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOZQf7wE5XxUB3YnEZ4MjqA7F8aze2rq5jM0uo3xxxxx 504091986@qq.com
上面就是我们生成的公钥了,当然也可以直接进入的.ssh
目录下,打开 id_ed25519.pub
文件,也可以看到公钥中的内容。
四 Github上配置公钥
打开对应的项目工程,然后按下面的步骤配置:
如上面截图所示,依次点击
Settings -> Deploy keys
,在显示的页面上,Title
随便起个名字,重点是 Key
,将上一节生成的公钥拷贝到这里,下面的 Allow writes acess
打上勾,点击 Add key
按钮就可以了。
- 验证是否设置成功
ssh -T git@github.com
如果返回下面的提示则表示设置成功了:
Hi xxx! You've successfully authenticated, but GitHub does not provide shell access.
后续就可以在Android Studio
中直接通过git
操作远程代码仓库了。
转载自:https://juejin.cn/post/7223942652068102200