使用ssh-key无需密码即可推送到github
我生成了一个没有密码的密钥对,并将公钥添加到github。 连接
user@dev:/var/www/project# ssh -T git@github.com Hi User! You've successfully authenticated, but GitHub does not provide shell access.
是成功的,当我重命名的关键,它失败了。 但是,当我想推进我的更改,它仍然问我的用户名/密码组合。
有没有办法推送没有密码?
如果它要求您提供用户名和密码,则您的原始远程站点将指向https url而不是ssh url。
将其更改为ssh。
例如,像Git这样的github项目将会有https url
https://github.com/<Username>/<Project>.git
和ssh之一:
git@github.com:<Username>/<Project>.git
你可以做:
git remote set-url origin git@github.com:<Username>/<Project>.git
改变url。
另外对于要点,似乎你必须省略用户名
git remote set-url origin git@gist.github.com:<Project code>
您必须使用SSH版本而非HTTPS 。当您从存储库克隆时,请使用SSH版本复制该链接,因为SSH易于使用并解决访问所有问题。您可以为每个input到帐户的SSH设置访问权限(如推送,拉,克隆等…)
这里是一个链接,说明为什么我们需要ssh和如何使用它:一步一步
Git生成SSH密钥
使用命令行:
inputls -al ~/.ssh
以查看是否存在现有的SSH密钥
在terminal显示:没有目录存在
然后生成新的SSH密钥
步骤1。
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
第2步。
Enter a file in which to save the key (/Users/you/.ssh/id_rsa): <here is file name and enter the key>
步骤3。
Enter passphrase (empty for no passphrase): [Type a password] Enter same passphrase again: [Type password again]