我用的是Mac雪豹,刚刚安装了git。

我只是试了

git clone git@thechaw.com:cakebook.git

但这给了我这个错误:

Initialized empty Git repository in `/Users/username/Documents/cakebook/.git/`
Permission denied (publickey).
fatal: The remote end hung up unexpectedly

我错过了什么? 我也试过做ssh-keygen没有密码,但仍然错误。


当前回答

这些是我在windows 10中遵循的步骤

打开Git Bash。 生成公钥: ssh-keygen -t rsa -b 4096 -C "youremailaddress@xyz.com" 复制生成的键到剪贴板(像CTRL+C一样工作) 剪辑< ~/.ssh/id_rsa.pub 浏览器,进入Github => Profile=> Settings => SSH和GPG Key => Add Key 提供键名和粘贴剪贴板(CTRL+V)。 最后,测试您的连接(Git bash) ssh -T git@github.com

谢谢!

其他回答

$ cd ~
$ cd .ssh
$ chmod 400 id_rsa

我删除了node_modules/ package-lock。Json和yarn。锁文件。再次运行npm i。这为我解决了问题。

如果用户未生成之前设置的ssh公私钥对

此信息在聊天上工作,但可以应用于所有其他支持SSH pubkey身份验证的git存储库。(参见[gitolite][1], gitlab或github。)

首先设置您自己的公钥/私钥对集。这 可以使用DSA或RSA,所以基本上你设置的任何密钥都可以工作。 在大多数系统上,您可以使用ssh-keygen。

First you'll want to cd into your .ssh directory. Open up the terminal and run: cd ~/.ssh && ssh-keygen Next you need to copy this to your clipboard. On OS X run: cat id_rsa.pub | pbcopy On Linux run: cat id_rsa.pub | xclip On Windows (via Cygwin/Git Bash) run: cat id_rsa.pub | clip On Windows (Powershell) run: Get-Content id_rsa.pub | Set-Clipboard (Thx to @orion elenzil) Add your key to your account via the website. Finally setup your .gitconfig. git config --global user.name "bob" git config --global user.email bob@... (don't forget to restart your command line to make sure the config is reloaded) That's it you should be good to clone and checkout.

更多信息请访问https://help.github.com/articles/generating-ssh-keys(感谢@Lee Whitney) [1]: https://github.com/sitaramc/gitolite

-

如果用户已经生成了之前设置的ssh公私钥对

检查哪个密钥已被授权在您的github或gitlab帐户设置 确定必须从本地计算机关联哪个相应的私钥

Eval $(ssh agent -s)

定义键的位置

ssh-add ~ / . ssh / id_rsa

当我试图运行一个makefile时,我得到了类似的权限拒绝(publickey)错误。

作为上述SSH步骤的替代方法,您可以安装本地GitHub for Mac应用程序。

点击下载GitHub for Mac从- https://help.github.com/articles/set-up-git#platform-mac

一旦你用你的git hub帐户完成了设置(我也安装了git hub命令行工具,但不确定是否需要这一步),然后我收到了一封电子邮件-

[GitHub]一个新的公钥已添加到您的帐户

我的错误被纠正了。

首先,我建议检查一些标准的东西,比如:

以正确的用户登录系统, 在系统的正确位置拥有正确的私钥, 尝试使用正确的用户名、主机名和端口进行连接, 将公钥放在外部服务器中正确的位置(并为正确的用户), 重新启动计算机上的SSH服务:

service ssh restart

(或者以另一种方式取决于您如何管理系统中的服务…)

这对我来说已经足够了。