使用 ssh 身份验证的 IntelliJ 设置存储库

2024-05-09

我正在尝试使用设置存储库Intellij 2017.1 中的功能,但我想使用 ssh url 作为存储库而不是 https。我不喜欢处理那些在第一次创建后无法复制的个人访问令牌。所以我尝试使用 ssh 但当我单击“覆盖本地”时,出现以下错误

无法设置上游存储库:只读文件系统

我是否被迫使用 https 或者有办法将其配置为与 ssh 一起使用?我的 ssh 密钥在终端中可以正常推送,并且位于正常位置~/.ssh


这个答案可能无法解决您的问题,但我仍然会添加它,因为此页面是 Google 中“intellij 设置存储库身份验证失败”请求的第一个结果。

添加设置存储库时出现“身份验证失败”错误的问题。我在升级到 macOS Mojave 10.14.1 后遇到了这个问题,它提供了新版本的 ssh-keygen 二进制文件。

原因是我生成了一个新的 ssh 密钥ssh-keygen -t rsa -C "Michael Ledin" -b 4096命令。

检查您的 SSH 私钥(通常~/.ssh/id_rsa)。如果它开始于

-----BEGIN OPENSSH PRIVATE KEY-----

然后它具有新的 RFC4716 密钥格式,目前基于 IntelliJ 的 IDE 使用的 JGit 不支持该格式。

要解决此问题,您可以:

  1. 要么以旧的“PEM”格式生成新密钥,然后添加-m "PEM" option:

    ssh-keygen -t rsa -C "Michael Ledin" -b 4096 -m "PEM"
    
  2. 或者,如果您已经将公钥添加到 ssh 远程和存储库,并且很难在任何地方用新密钥替换它,那么您有两种选择将其转换为旧的 PEM 格式:

    a) with ssh-keygen(它会要求输入新密码 - 使用旧密码或将其留空):

    ssh-keygen -p -m PEM -f ~/.ssh/id_rsa
    

    b) with putty

    1. 第一次安装putty并将私钥转换为 SSH2 格式(我假设您当前的密钥存储在~/.ssh/id_rsa):

      brew install putty
      mv ~/.ssh/id_rsa ~/.ssh/id_openssh
      puttygen ~/.ssh/id_openssh -O private-sshcom -o ~/.ssh/id_ssh2     
      
    2. 接下来将 SSH2 密钥转换为 PEM:

      ssh-keygen -i -f ~/.ssh/id_ssh2 > ~/.ssh/id_rsa
      rm ~/.ssh/id_ssh2
      
    3. 现在你有了你的私钥~/.ssh/id_rsa采用旧的 PEM 格式,可供基于 IntelliJ 的 IDE 使用;原始密钥存储在~/.ssh/id_openssh文件并可以删除:

       rm ~/.ssh/id_openssh
      

用于创建此答案的链接:

将 OpenSSH 私钥转换为 RSA PEM https://federicofr.wordpress.com/2019/01/02/how-to-convert-openssh-private-keys-to-rsa-pem/

ssh-keygen 不创建 RSA 私钥 https://serverfault.com/a/941893/122228

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 ssh 身份验证的 IntelliJ 设置存储库 的相关文章

随机推荐

  • iPython 笔记本上的内联数学模式

    在 iPython 笔记本中 我如何编写数学公式 例如r 2在一行中 乳胶词汇中的内联数学模式 IE 打印公式的时候可以不换行吗 如果像在 LaTeX 中一样 它应该是 r 2 但它不起作用 感谢您的帮助 在 Markdown 单元格中 您
  • 如何编辑 Mailchimp 自动化电子邮件的纯文本版本?

    我已经使用 Mailchimp 运行自动化工作流程一段时间了 其中有一个简单的欢迎新闻通讯 自动化电子邮件编辑器仅允许我编辑电子邮件的 HTML 版本 并自动生成基于文本的版本 但是 它仅在首次创建电子邮件时生成纯文本版本 从那时起 我已经
  • JKS、BKS 和 PKCS12 文件格式

    我正在设置一个无头服务器 该服务器使用用户提供的数据 JS CSS HTML 密钥库 为 Android 构建 Phonegap 混合应用程序 我想进行一些基本的客户端检查 以确保上传的密钥库有效 对于 JKS 文件 我发现可以通过确保提供
  • Excel 2013 COM API 在服务帐户下挂起 ExportAsFixedFormat

    我有一个 NET Windows 服务 它调用 Excel 2013 COM API 以在 PDF 上导出 Excel 文档 我已尝试使用在两个不同域帐户下运行的 Windows 服务来执行此代码 这两个帐户都是运行代码的计算机上的本地管理
  • Matplotlib:imshow 中 set_data 对绘图没有影响

    我有一个奇怪的错误 没有你的帮助我无法修复 当我设置图像后imshow在 matplotlib 中 即使我用方法更改它 它也始终保持不变set data 看看这个例子 import numpy as np from matplotlib i
  • GUI设计技术增强用户体验[关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 将文本置于圆形按钮上居中

    我想创建一个按钮圆形链接 其中包含文本 但我在将文本置于圆形按钮内居中时遇到问题 行高太大 对这个问题有什么建议吗 这是代码 https jsfiddle net hma443rL https jsfiddle net hma443rL b
  • 如何在 PowerShell 中使用参数执行外部程序?

    我读过这个答案堆栈溢出 https stackoverflow com questions 1673967 how to run exe in powershell with parameters with spaces and quote
  • 更改svg中半圆的背景颜色

    我想在此 svg 代码上创建上弦月和第三弦月
  • Azure 工作簿中的可选下拉参数

    我想在 Azure 工作簿中创建可选下拉参数 创建下拉参数有了本指南 https 20https learn microsoft com en us azure azure monitor visualize workbooks dropd
  • 提交 ID 从哪里来?

    我只是对此很好奇 提交 ID 不能是随机的 因为它们需要是唯一的 不过 它们似乎是随机的 这让我想知道 为什么它们不只是连续的数字 我的意思是 它们只需要在存储库中是唯一的 对吧 或者我在这里错了 Thanks Git 提交 ID 是 SH
  • 我在哪里可以学习如何使 C++ 程序与操作系统 (Linux) 交互

    我是一个 C 初学者 我想创建与操作系统交互的小程序 使用 Kubuntu Linux 到目前为止 我还没有找到任何教程或手册来让 C 与操作系统交互 在 PHP 中 我可以使用命令 exec 或反引号运算符来启动通常在控制台中执行的命令
  • xml2 包 (R) 中的 xml_find_all 函数未找到相关节点

    我使用 R 中的 xml2 包来访问 xml 数据 发现它在不同的 xml documents 上表现不同 在这个宠物的例子中 library xml2 doc lt read xml
  • 访问函数中的环境

    In main我可以读取我的配置文件 并将其提供为runReader somefunc myEnv正好 但somefunc不需要访问myEnv读者提供 链中的下一对也没有提供 需要 myEnv 中某些内容的函数是一个微小的叶函数 如何在不将
  • 使用 gbuffer 在 R 中缓冲(地理)空间点

    我正在尝试缓冲数据集中半径为 100 公里的点 我正在使用该功能gBuffer从包装中rgeos 这是我到目前为止所拥有的 head sampledf postalcode lat lon city province 1 A0A0A0 47
  • iOS 中的 NSCachesDirectory 和 NSDownloadsDirectory 有什么区别?

    我想将下载的杂志保存到我的 iOS 应用程序中的一个目录中 它似乎NSCachesDirectory and NSDownloadsDirectory是合适的 我不知道它们之间有什么区别 以及哪一种适合下载杂志 任何建议表示赞赏 内存不足时
  • Facebook Messenger 平台 - 检测用户输入

    在开发机器人时 通常的做法是向用户显示打字指示器 而机器人在后台工作 但是是否可以检测相反的情况 用户是否正在打字或空闲 我在文档或谷歌中找不到任何信息 有人知道如何实现这一目标吗 目前还无法做到这一点 您只能向用户显示您正在输入 typi
  • DateTime2 之后的数字是用于纳秒目的吗?

    我已经阅读了该文档 但我不完全理解 默认精度是datetime2 7 7代表纳秒的精度 不 该数字表示秒的小数点后保留的位数 3 表示毫秒 6 微秒 7 相当于 100 纳秒的精度
  • 使用 AWS SSO 时 AWS Java SDK 未找到配置文件

    当我使用 AWS SSO 登录时 我无法访问 aws 我使用以下方式从计算机登录 aws sso login profile staging 配置文件的配置如下 profile staging sso start url https som
  • 使用 ssh 身份验证的 IntelliJ 设置存储库

    我正在尝试使用设置存储库Intellij 2017 1 中的功能 但我想使用 ssh url 作为存储库而不是 https 我不喜欢处理那些在第一次创建后无法复制的个人访问令牌 所以我尝试使用 ssh 但当我单击 覆盖本地 时 出现以下错误