gpt4 book ai didi

windows - Git Bash 和 Pageant 没有使用 key

转载 作者:IT王子 更新时间:2023-10-29 00:49:54 34 4
gpt4 key购买 nike

我已经安装了适用于 Windows 的 Git(为 MinTTY 和 PuTTY\plink.exe 配置)和 PuTTY,我正在尝试让它与 Bitbucket 存储库一起使用。我已经在 Pageant 和网站上加载了我的 SSH key ,但每当我尝试做任何需要 pull/推的事情时:

Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

当我运行建议的 ssh -v hg@bitbucket.org 时,它使用 id_rsa 但我在 ~/.ssh 中没有其他 key >。尝试使用 ssh-add ~/.ssh/bitbucket_rsa 结果:

Could not open a connection to your authentication agent.

我读过有关配置 PuTTY 以允许转发的信息,但这通常是建议结束的地方,所以我只是为默认 session 设置此选项并将其保存在那里。

我已经运行 ps 来检查哪些应用程序正在运行,ssh-agent 不在其中。运行 eval 'ssh-agent' 启动守护进程,但没有任何区别。

最佳答案

这就是最终对我有用的东西。

顺便说一句,我在 Windows 上也有 Bash,但我认为这不重要。

我安装了 Sourcetree 并用 plink.exeputtygen.exepageant.exe 指向它的文件夹。您也可以单独下载并安装它们。

配置Windows环境变量

  1. 在 Windows 10 搜索栏中输入 Environment。否则,打开系统属性/高级系统设置并找到您的环境变量。
  2. 添加一个新的系统变量
    • 变量名:GIT_SSH
    • 变量值:plink.exe 文件的完整路径(您可能还有 pageant.exeputtygen.exe 在同一文件夹中)。
      • 我的是:C:\Program Files (x86)\Atlassian\SourceTree\tools\putty\plink.exe

      • 注意:较新版本的 Sourcetree 似乎安装了 ot %localappdata%。这些工具位于 %localappdata%\SourceTree\app-x.x.x\tools\putty

      • 注意:较新的 Sourcetree(Windows 上的 v2)使用版本化目录,因此每次更新它时,您都必须更新它,这很痛苦。最好只复制 plink.exe 并将其放在不会更改的地方。

      • 如果您正在运行上述任何程序,您可以随时打开任务管理器,找到进程,然后打开文件夹位置以获取 plink.exe 的路径。

利润

确保重新启动您的终端,以便它们获得更新的环境变量。对我来说,我在 Visual Studio Code 中为我的集成终端运行 Bash ,所以我不得不重新启动 Visual Studio Code。关闭集成终端并打开一个新终端肯定是可以接受的,但我也希望 Visual Studio Code 中的内置 git 功能也能正常工作。

注意事项

鉴于我已经安装了 Sourcetree,我能够使用它的界面从 Bitbucket 中克隆下来并通过它的界面推送,但是尝试通过终端是行不通的,因为它们使用的是不同的凭证集。

要指出的另一件有趣的事情是,如果您导航到位于以下位置的项目的 git 配置:./.git/config,您可以将您的 Remote 从使用 SSH 换成 HTTPS。您可以从 Bitbucket 存储库的概览中获取以下值。

  • ssh 布局:git@bitbucket.org:USERNAME/REPO_NAME.git
  • https 布局:https://USERNAME@bitbucket.org/USERNAME/REPO_NAME.git

我注意到在 Windows 10 上使用 HTTPS 时它会使用 Windows 凭据管理器(我尝试将我的凭据添加到其中,同时尝试自己解决这个问题,但我仍在使用 SSH,所以没关系)当你去与远程存储库交互,它会提示您输入凭据并将它们存储起来以供以后在 Windows 凭据管理器中使用:)

希望其中一种方法对您有用。 HTTPS 方法将跳过整个 SSH key 生成并将其推送到 Bitbucket,但对我来说感觉更安全和便携。

苹果操作系统

您可能需要将您的 key 添加到钥匙串(keychain)中,尤其是当您使用 Visual Studio Code 并且您的 key 上有密码时(目前 Visual Studio Code 不允许您输入密码)。

ssh-add -K ~/.ssh/id_rsa

https://help.github.com/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent/#adding-your-ssh-key-to-the-ssh-agent

添加

我不确定这些是否对某些人有帮助,但我一直在关注将 SSH 支持引入 Visual Studio Code for Windows:https://github.com/Microsoft/vscode/issues/13680 .

关于windows - Git Bash 和 Pageant 没有使用 key ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35110079/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com