git 公钥提交代码_github设置使用SSH key来提交修改代码

1.首先要有自己的github帐号

第一次创建帐号会引导创建一个自己的版本库, 照着指示 先建一个版本库耍耍吧.

2.  创建一个SSH KEY

按照文档中所述先创建一个SSH key, 要求输入密码的时候可以选择空, 可以避免后面要使用key的时候提示输入密码.

点击(此处)折叠或打开

$ ssh-keygen -t rsa -b 4096 -C "your_email@example.com

3. 整理生成的SSH KEY

一般生成的文件在~/.ssh/目录下 id_rsa(密钥)  id_rsa.pub(公钥)这里如果有人有多个ssh key用来访问不同的服务器, 就可能需要重命名.

例如:

我将生成 的key改个容易识别名字git_hub.

点击(此处)折叠或打开

$ cd ~/.ssh

$ mv id_rsa git_hub

$ mv id_rsa.pub git_hub.pub

另外需要配置一个~/.ssh/config文件(没有就创建一个), 里面用来配置访问不同服务器时指定用哪个key(密钥)

看我这边~/.ssh/config的内容:

点击(此处)折叠或打开

$ cat ~/.ssh/config

Host github.com

User your_github_name

IdentityFile ~/.ssh/git_hub

文件内容大致是 使用SSH方式访问github.com时 使用的密钥文件为~/.ssh/git_hub, 用户名: your_github_name(即上面注册的github用户名)

4. 按照 官方文档的继续操作:

增加 私钥 到ssh-agent高速缓存(ubuntu 16.04测试系统重启后 不需要再次输入此命令 就可以使用ssh key修改提交代码了)

点击(此处)折叠或打开

$ ssh-add ~/.ssh/git_hub

5. 将公钥上传到github上

按照官方文档 在 github网站上:

个人设置 Setting - SSH and GPG keys - SSHkeys - New SSH key

title: 随便写一个容易识别的标题

Key: 中增加git_hub.pub 内容(可以查看git_hub.pub内容, 然后手动复制粘贴)

6. 本机测试上面的 ssh key是否设置OK

执行下面的命令

点击(此处)折叠或打开

$ ssh -vT git@github.com如果后面出现 :

Hi ****! You've successfully authenticated, but GitHub does not provide shell access.

证明SSH key配置OK. 如果失败 因为加了-v参数 可以详细看到哪一步出的错, 慢慢排查吧....

下面使用SSH的方式来 使用上面配置好的SSH KEY来修改你在github上创建的版本库中的文件 并提交.

7. 下载版本库

先将你创建的版本库用git下载下来, 下载地址在版本库界面  "Clone and Download" 按钮点击后显示.

注意: 在点开显示的页面中 右上角选择"use SSH"(如果没用帐号登录将只有https一种下载方式, https方式无法使用SSH KEY来修改提交代码)

SSH下载地址为git@github.com 开头, 我这边是: git@github.com:Meppo/hello-world.git

8. 下载完代码后, 进入代码目录, 查看一下此版本库配置, 看 git提交方式是否为SSH

点击(此处)折叠或打开

$ cat .git/config

看中间一段:

点击(此处)折叠或打开

$ [remote "origin"]

#url = https://github.com/Meppo/hello-world.git

url = git@github.com:Meppo/hello-world.git

fetch = +refs/heads/*:refs/remotes/origin/*

如果 url这一行 是https:// 开头(#开头被注释的那一行) 证明仍然使用的https方式来提交代码 仍会提示输入github用户名/密码

如果 url这一行 是git@ 开头  证明使用的ssh方式来提交代码 应该就会使用上面我们添加的ssh key, 自动验证 无需任何要求输入用户名/密码的操作.

9. 修改个文件并提交.

创建个文件并提交 看是否不需要用户密码就能提交成功

点击(此处)折叠或打开

$ echo "test" > a.txt

$ git add a.txt

$ git commit a.txt -m "add file a.txt"

$ git push

10. 至此  应该OK了, 可以通过SSH KEY的方式 任性的修改提交代码了.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值