我用的是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没有密码,但仍然错误。


当前回答

在MAC中,进入终端

1)使用命令- cd ~进入主目录

2) cd .ssh && ssh-keygen(默认情况下,双击输入/返回键)

Generating public/private rsa key pair.
Enter file in which to save the key (/Users/username/.ssh/id_rsa):      
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /Users/usernmae/.ssh/id_rsa.

3)之后,做“ls”。您将找到id_rsa。酒吧文件。

4)复制id_rsa. conf文件中的内容。Pub文件(使用cat命令读取- cat id_rsa.pub)

5)导航到BitBucket或任何支持SSH密钥的版本工具。使用“添加键选项”粘贴内容

就是这样。试着现在就做出承诺和努力。

其他回答

我也犯了同样的错误。

问题是,当将公钥复制到BitBucket(在我的情况下)时,在末尾复制/粘贴了一个不可见的换行符。

因此,在复制公钥时,首先将其复制到记事本,删除末尾的空行,复制并粘贴。

我已经使用gh进行了身份验证,创建了新的密钥,等等。问题是我在Ubuntu中安装了带snap的gh,所以生成的新密钥在。/snap/gh/502/。Ssh /,而不是常规的. Ssh路径。

我解决了它复制一切到。ssh文件夹:

cp -a ./snap/gh/502/.ssh/* .ssh/

如果没有,用find找到你的钥匙。- name * .pub

我想,在数字世界里,知道你把钥匙放在哪里仍然是个问题。

Mac操作步骤:

切换用户(sudo su - jenkins) 生成密钥(ssh-keygen -t rsa -b 4096 -C "username")。用户名 是你和詹金斯一起用的。 复制生成的公钥(cat ~/.ssh/id_rsa.pub)。 将密钥粘贴到git帐户。(设置-> SSH和CPG密钥->新建 ssh keys ->输入密钥名称(可以是任意),并将密钥粘贴到 描述)。

我得到了同样的错误。我的问题是混入sudo。

如果不给git clone命令加上sudo前缀,就无法自动创建要克隆到的目录。然而,当我这样做的时候,我的ssh键没有被正确引用。

为了解决这个问题,我通过chmod在我想要包含我的克隆的父目录上设置权限,这样我就可以对它进行写入。然后我运行git克隆没有一个sudo前缀。然后它成功了!之后我把权限改回来了。完成了。

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