使用我的私钥在 Windows 上工作时无法 git 克隆 Mac

Unable to git clone on Mac while works on Windows using my private keys

我目前正在将我的文件从 windows 迁移到 mac。其中之一是我所有的 git 存储库。我在 Windows 上所做的是从 PuttyGen 生成我的 .ppk 和 public 密钥,然后使用 Pageant 添加 .ppk 文件,同时从 git 存储库克隆。我在 Windows 中使用 GitExtension。

现在 Mac,我创建了一个本地存储库文件夹,所有克隆的存储库都将存储在该文件夹中。将我的 public 和私钥放入 ~/.ssh/。并编辑 ~/.ssh/config 并添加如下内容:

     Host 192.168.20.4
        User git
        HostName 192.168.20.4
        IdentityFile ~/.ssh/user_git.ppk

我认为一切都已设置,但我仍然收到:

    MACBOOKs-MacBook-Pro:.ssh username$ git clone 
    git@192.168.20.4:repositories/project-repo.git
    Cloning into 'project-repo'...
    Enter passphrase for key '/Users/username/.ssh/user_git.ppk': 
    git@192.168.20.4's password: 
    Permission denied, please try again.
    git@192.168.20.4's password: 
    Permission denied, please try again.
    git@192.168.20.4's password: 
    Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password).
    fatal: Could not read from remote repository.
    Please make sure you have the correct access rights
    and the repository exists.

每次我使用私钥从 windows 克隆时,它都不会询问密码或口令。

我也使用了 GitKraken 并在那里使用了 private_key 但仍然权限被拒绝

我已经多次将密钥从 windows 复制到 mac,但仍然根本不起作用。

还缺少什么设置?

谢谢!

PPK 是 PuTTY 专用的私钥格式。您必须将其转换为 OpenSSH 格式密钥。

$ puttygen user_git.ppk -O private-openssh -o user_git

See this answer for more details.

看起来您的主机和主机名是同一个 IP。我认为 Host 应该是你的项目特定 IP,Hostname 应该是 github 的 IP,比如:

# Foo Account
Host github.com-foo
  HostName github.com
  User git
  IdentityFile ~/.ssh/foo.pem