【问题标题】:git ssh keys present in some terminals but not others某些终端中存在 git ssh 密钥,但其他终端中没有
【发布时间】:2022-06-11 17:35:00
【问题描述】:

我可以使用 git 从我的 MobaXterm 终端应用程序克隆和推送,但不能从 Windows PowerShell 或 RStudio 终端。

当我尝试从这些终端推送时,git 似乎不知道我的用户名并尝试以用户“git”的身份登录。或者,至少,我是这样理解的

我不能pushremote show origin。我的密码在那个提示下不起作用,而且它似乎不知道我的用户名。

我尝试过的一件事是启动git-gui。当我从 MobaXterm 启动 git-gui 并选择“显示 SSH 密钥”时,我可以在那里看到一个密钥。当我从 RStudio 或 PowerShell 启动 git-gui 时,我没有。

这里发生了什么?是否安装了两个 git-gui?如何正确配置所有内容?非常感谢!

【问题讨论】:

  • 在 Windows 上 git credentials 存储在 Credential Manager 中,您可以检查您的凭据是否存储在那里,如果不是,那么您必须到 add 一个
  • 这个网址很难说,但如果是ssh网址,必须以git@gitlab.com登录;您通常会使用您在 GitLab 注册的公钥作为您的 公钥(不是密码!),而您根本不会输入它。您最多可以输入一个密码短语来解锁对公钥/私钥对的访问,以便您的 ssh 可以发送公钥并使用私钥。
  • @Ankit,我的凭据存储在凭据管理器中,它似乎可以与 Moba Xterm 一起使用。为什么凭据对一个终端而不是另一个终端可以正常工作?这个过程中是否有一些特定于终端的元素?

标签: git powershell gitlab rstudio ssh-keys


【解决方案1】:

当我尝试从这些终端推送时,git 似乎不知道我的用户名并尝试以用户“git”的身份登录。

假设使用的 URL 确实是 SSH 的 (git@github.com:me/myRepo),请注意远程用户 总是 git 用于 SSH URL。

通过与注册到 GitHub 用户帐户的公钥匹配的私钥完成身份验证。

我的凭据存储在凭据管理器中,它似乎可以与 Moba Xterm 一起正常工作。

凭据管理器仅存储 HTTPS URL 的凭据(GitHub 用户帐户/密码),而不是 SSH 的。

【讨论】:

    猜你喜欢
    • 2013-08-20
    • 2017-04-12
    • 2013-09-14
    • 2012-10-05
    • 2018-06-09
    • 1970-01-01
    • 2021-08-11
    • 1970-01-01
    • 2013-06-13
    相关资源
    最近更新 更多