github不用输入用户密码即可登录

使用github的时候,尤其是往自己的项目中提交内容时,如果每次都要输入账号密码,这会是一个极其让人难受的事情。下面介绍如何不输入账号密码,直接使用git push origin xx,即可直接提交的方法。

github下拉内容的方法

github下拉内容的方法有两种,一种是HTTPS方式,另一种则是SSH方式。

第一种方式下拉的代码,在提交的时候,每次必须使用账号密码进行一个验证。

第二种方法下拉的代码,在提交的时候,则不用进行账号密码验证,因为它使用了本地和github账户中的公私钥进行了验证。

git下拉时候会遇到的问题

如果我们想使用第二种方式下拉代码,会使用类似这样的命令:git clone --recursive git@github.com:Vansuicide/MachineLearningInAction.git

可是在执行命令的过程中,会出现错误:

Permission denied (publickey).
fatal: Could not read from remote repository.

这个问题主要是github和本地没有产生SSH KEY的连接。

产生SSH KEY的方法

1.首先,如果没有SSH KEY的话,需要生成一下。使用ctrl+alt+t,打开terminal输入如下命令:ssh-keygen -t rsa -C "youremail@example.com", youremail@example.com改为自己的邮箱即可,途中会让你输入密码啥的,不需要管,一路回车即可,会生成你的ssh key。(如果重新生成的话会覆盖之前的ssh key。)

2.然后再ternimal下执行命令:

  ssh -v git@github.com 

  最后两句会出现:

  No more authentication methods to try.  

  Permission denied (publickey).

3.这时候再在ternimal下输入:

  ssh-agent -s

  然后会提示类似的信息:

  SSH_AUTH_SOCK=/tmp/ssh-GTpABX1a05qH/agent.404; export SSH_AUTH_SOCK;  

  SSH_AGENT_PID=13144; export SSH_AGENT_PID;  

  echo Agent pid 13144;

4.接着再输入:

  ssh-add ~/.ssh/id_rsa

  这时候应该会提示:

  Identity added: ...(这里是一些ssh key文件路径的信息)

  (注意)如果出现错误提示:

  Could not open a connection to your authentication agent.

  请执行命令:eval `ssh-agent -s`后继续执行命令 ssh-add ~/.ssh/id_rsa,这时候一般没问题啦。

5.打开你刚刚生成的id_rsa.pub,将里面的内容复制,进入你的github账号,在settings下,SSH and GPG keys下new SSH key,title随便取一个名字,然后将id_rsa.pub里的内容复制到Key中,完成后Add SSH Key。

例如:

6.之后就可以使用,git clone --recursive git@github.com:Vansuicide/MachineLearningInAction.git,下拉代码,并使用git push origin master命令,直接上传信息啦。

posted @ 2018-09-10 10:41  Vancuicide  阅读(481)  评论(0编辑  收藏  举报