【问题标题】:How is JetBrains IntelliJ accessing my GitHub account to push changes?JetBrains IntelliJ 如何访问我的 GitHub 帐户以推送更改?
【发布时间】:2017-05-30 02:19:33
【问题描述】:

我在 IntelliJ 中创建了一个新的测试项目,将其置于 VCS 下,然后将远程分配给公共 GitHub 存储库 (https://github.com/BrianHVB/GitTest1)

每当我从 IntelliJ (VCS | Git | Push) 中推送更改时,操作都会成功完成,我可以登录到我的 GitHub 页面并查看更新。

但是,鉴于以下情况,我不明白 IntelliJ 如何访问远程存储库:

  • 没有与我的 GitHub 帐户关联的 SSH 或 GPG 密钥
  • 我的 ~/.SSH 文件夹中没有公钥或私钥。
  • 我尚未将我的 GitHub 凭据输入 IntelliJ
  • 我认为我没有在任何本地 Git 设置中输入我的电子邮件地址以外的任何内容
  • 我已经在浏览器上退出了 GitHub。

另外,我似乎找不到任何用于设置或配置远程存储库的 IntelliJ 选项。根据IntelliJ's documentation,应该有VCS |吉特 |遥控器工具。但是,我的 VCS | 中没有“远程”选项。 Git 窗口,全局工具搜索 (ctrl+shift+a) 中没有 Git Remotes 或 Remotes 工具或操作。

如何访问或更改我的 IntelliJ 项目的远程存储库设置,以及如何添加某种身份验证要求?

【问题讨论】:

    标签: git github intellij-idea ssh


    【解决方案1】:

    由于您已将其分配给 https url,因此 ssh 无关紧要。

    在命令行中检查git config credential.helper 返回的内容:您可能很久以前就缓存了github.com 凭据,在这种情况下,IntelliJ 及其git push 调用将从凭据管理器获取您的凭据。

    IntelliJ 本身知道如何handle Passwords for Git Remote Repositories

    IntelliJ IDEA 提供configure a password policy 的功能,根据该功能,密码要么永远不会保存,要么在一个会话期间保存并在会话结束时清除,要么存储在一个特殊的密码数据库中。

    【讨论】:

    • 谢谢,就是这样。显然,当我安装 Windows GitHub Git 客户端时,它还安装了 github.com/Microsoft/Git-Credential-Manager-for-Windows,它将我的用户名和密码存储在我的 Windows Credential Store 中。客户端还配置了我的 GitHub 帐户以允许将访问令牌用作登录名,这就是为什么我不记得将密码输入凭据存储区的原因。仍然不确定为什么 IntelliJ 不给我配置远程存储库的选项。
    【解决方案2】:

    这是来自 GitHub 的一个非常糟糕的转折,我最生气的是,我收到了 0 个(零!)通知,告知此更改将于 2018 年 2 月 22 日发生。

    在旧版本的 git 上安装凭据管理器没有帮助。

    有什么帮助:

    • a) 卸载当前的 git
    • b) 安装最新的 git https://git-scm.com/download/,它包含凭证管理器
    • c) 在 Intellij IDEA 中转到 File->Settings->Version Control->Git,向 IDEA 显示新 git.exe 所在的位置
    • d) 之后进行测试提交并尝试推送:它应该为 github 注册打开新窗口
    • e) 在那里设置您的凭据,一切都会好起来的

    【讨论】:

    • 我不确定您指的是什么变化。这个问题最初是在一年前发布的。 2 月 22 日发生了什么?
    猜你喜欢
    • 1970-01-01
    • 2021-08-23
    • 2018-03-27
    • 2023-01-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-20
    相关资源
    最近更新 更多