Git 密钥具有密码时升华合并SSH失败

Git 密钥具有密码时升华合并SSH失败,git,ssh-keys,sublimemerge,Git,Ssh Keys,Sublimemerge,当我尝试克隆回购时,我得到一个git失败,退出代码为128 当我试着推/拉的时候,我得到了一个git@gitlab.com公钥被拒绝 在我的~/.ssh文件夹中,我有一个如下所示的配置文件: Host mycompany.gitlab.com HostName gitlab.com User git PreferredAuthentications publickey IdentityFile ~/.ssh/gitlab-company-bryan 终端中的gi

当我尝试克隆回购时,我得到一个git失败,退出代码为128

当我试着推/拉的时候,我得到了一个git@gitlab.com公钥被拒绝

在我的~/.ssh文件夹中,我有一个如下所示的配置文件:

Host mycompany.gitlab.com
    HostName gitlab.com
    User git
    PreferredAuthentications publickey
    IdentityFile ~/.ssh/gitlab-company-bryan
终端中的git工作正常,但升华合并我得到了权限错误

我需要做什么才能让Sublime使用此公钥?我非常困惑,现在就开始工作

终端中的git工作正常,但升华合并我得到了权限错误

第一:

私钥是用Git 2.19.2生成的,这意味着openssh 7.8+,它刚刚更改了私钥的默认格式,从PEM每行64个字符更改为openssh每行70个字符。 看

尝试重新生成私钥并在GitLab上注册,但这次使用:

ssh-keygen -m PEM -t rsa -P "" -f mynewkey
也就是说,通过升华合并排除该键的任何解释错误

其次,似乎不支持使用密码短语的SSH私钥,除非SSH代理正确配置为缓存所述密码短语

macOS上的KeyChain为我处理一切,无需任何ssh配置;我仍然使用默认的id\u rsa进行所有回购

委员会确认:

我终于让它与:

作为:

-K选项在苹果标准版本的ssh-add中,当您向ssh代理添加ssh密钥时,它会在密钥链中为您存储密码短语

终端中的git工作正常,但升华合并我得到了权限错误

第一:

私钥是用Git 2.19.2生成的,这意味着openssh 7.8+,它刚刚更改了私钥的默认格式,从PEM每行64个字符更改为openssh每行70个字符。 看

尝试重新生成私钥并在GitLab上注册,但这次使用:

ssh-keygen -m PEM -t rsa -P "" -f mynewkey
也就是说,通过升华合并排除该键的任何解释错误

其次,似乎不支持使用密码短语的SSH私钥,除非SSH代理正确配置为缓存所述密码短语

macOS上的KeyChain为我处理一切,无需任何ssh配置;我仍然使用默认的id\u rsa进行所有回购

委员会确认:

我终于让它与:

作为:

-K选项在苹果标准版本的ssh-add中,当您向ssh代理添加ssh密钥时,它会在密钥链中为您存储密码短语


对于那些感兴趣的人,我首先从命令行启动ssh代理,然后使用“ssh add”命令将我的密钥添加到ssh代理,然后在同一个打开的tty中,使用以下命令在当前目录上启动升华合并,从而在Ubuntu 18.04上工作: 斯梅奇&


这样,每次升华合并使用您的ssh密钥时,后台运行的ssh代理进程都会为您处理密码输入。

对于那些感兴趣的人,我在Ubuntu 18.04上使用它,首先从命令行启动ssh代理,然后使用“ssh add”命令将我的密钥添加到ssh代理,然后在同一打开的tty中,使用以下命令在当前目录上启动升华合并: 斯梅奇&


这样,每次Supreme Merge使用ssh密钥时,后台运行的ssh代理进程将为您处理密码输入。

您使用的是哪个版本的Git,从它工作的终端?@VonC Git version 2.19.2Does~/.ssh/gitlab company bryan每行有64或70个字符?@VonC每行有70个字符OK,那么我知道为什么了。但我只能在两小时内发布答案。同时,尝试用ssh-keygen-m PEM-t rsa-P-f mynewkey重新生成一个私钥,然后再试一次从它工作的终端使用什么版本的Git?@VonC Git version 2.19.2Does~/.ssh/gitlab company bryan每行有64或70个字符?@VonC每行有70个字符OK,那么我知道为什么了。但我只能在两小时内发布答案。同时,请尝试使用ssh-keygen-m PEM-t rsa-P-f mynewkey重新生成一个私钥,然后再试一次。感谢您花时间写这篇文章!我感谢您的帮助。由于某种原因,ssh add-K一直过期。这意味着出于某种原因,我必须每隔几天运行一次这个命令。你知道怎么把它永久化吗?很好的解释,冯,谢谢你花时间写这篇文章!我感谢您的帮助。由于某种原因,ssh add-K一直过期。这意味着出于某种原因,我必须每隔几天运行一次这个命令。你知道如何使它永久化吗?