PHPStorm密钥对设置使用gitlab

fef*_*efe 3 git openssh phpstorm gitlab

我刚获得了PhpStorm的许可证,我尝试设置密钥对,可以将代码拉到Gitlab,但我找不到在哪里以及如何制作这个?我在哪里这样做?问题似乎与PhpStorm没有使用root权限有关.

小智 8

虽然我不完全确定这是最适合这个答案的地方,但我相信这是其他人在面临试图通过VCS连接到GTPLab的PHPStorm(或者,真的,任何JetBrains)时最有可能的地方IDE).

话虽这么说,我遇到的问题与OP非常相似 - 在运行Git Bash时,我没有任何问题通过SSH连接到Git Lab.但是,当尝试通过Git与PHPStorm的VCS连接时,它会永久挂起.

对于前驱,我自己的发现与那些在Windows上运行JetBrain IDE的人有所不同.


解决方案是:

  1. 首先,您必须(显然)为您的GitLab用户帐户创建注册了SSH密钥.
  2. 正如@ Spero.ShiroPetto所提到的,PHPStorm确实利用SSH密钥的标准$ HOME/.ssh目录.所以:
    • 确保您的新生成的密钥文件可从主目录中的.ssh文件夹中获得.
    • PHPStorm还对这些文件使用标准命名约定,因此为了简单起见,请将这些命名为"id_rsa"和"id_rsa.pub".
  3. (可选)最好还为SSH密钥创建配置文件.如果您需要有多个密钥,这将有所帮助.如果您使用的是非标准SSH端口,或者如果存在与服务器连接相关的其他非标准参数,那么这是必须的.
  4. 现在,您已准备好打开PHPStorm,但在此之前,请确保以管理员身份运行它.这是必要的,因为当使用VCS for Git时,PHPStorm会在临时目录中创建一个批处理文件.此文件必须可以写入PHPStorm,这最简单的方法是以管理员身份运行应用程序.
  5. 最后,在尝试从GitLab服务器测试/克隆repo之前,您需要将Git设置为在访问Git时使用它的内置SSH可执行文件.所以:
    • 打开PHPStorm的设置(文件 - >设置或Ctrl + Alt + S)
    • 展开"项目设置"中的"版本控制"部分,然后选择Git
    • 确保SSH-Executable设置为"Built-in".(当你在这里时,你也可以确保Git可执行文件也设置正确.你可以点击Test按钮来验证这一点)

如果像OP和我一样,你之前已经能够通过Git Bash连接,那么此时你应该可以连接并使用VCS来满足你的Git需求.