【问题标题】:Running git from Windows Cmd line: Where are key files?从 Windows Cmd 行运行 git:关键文件在哪里?
【发布时间】:2011-09-01 21:27:09
【问题描述】:

所以我已经安装了 msysgit,并从 bash shell 成功运行了 git。

在 bash shell 中,我使用 ssh-keygen 创建了密钥 - 一切正常。
关键文件在我的 %userprofile%\.ssh 文件夹中(来自 bash shell,它是:~/.ssh)。
我能够连接到我的服务器(在我的情况下是 unfuddle)。

接下来,我确实希望能够从 Windows Cmd shell 运行 git。
c:\msysgit\binc:\msysgit\mingw\bin 添加到搜索路径。
Git 在本地工作得很好:分支、合并、添加、提交、签出……工作得很好。

但是,尝试使用服务器失败,出现:'Permission denied (publickey).'
它看起来像 git,当从命令行执行时会查看尝试分配密钥文件的不同位置,或者导致它失败的其他原因。

【问题讨论】:

    标签: git ssh msysgit


    【解决方案1】:

    在 Windows DOS 文件中,您需要定义一个 %HOME% 环境变量。

    HOME 默认情况下不存在于 DOS 会话中。
    您可以将其设置为 %userprofile%,因为这已经是您当前的设置。
    您也可以将它添加到您的用户环境变量中,以便任何 DOS 会话都可以获取它。

    【讨论】:

    • 努力设置用户环境变量,感谢这个救星!
    【解决方案2】:

    要让 mysysgit 命令行找到 .ssh 密钥,您需要让 %HOME% 指向包含 .ssh 文件夹的目录

    通常你可以这样做

    set HOME=%USERPROFILE%
    

    【讨论】:

    • 谢谢 JaredPar 和 VonC。你的建议奏效了。对两者都 +1。
    • 我遇到了同样的错误。我以这种方式设置了 %HOME% ......仍然没有喜悦。还有其他建议吗?我可能会错过什么?
    • 我一直在到处寻找这个答案......谢谢@JaredPar
    • 我已经为此奋斗了一个小时,这就是最终奏效的答案。
    猜你喜欢
    • 1970-01-01
    • 2014-11-19
    • 1970-01-01
    • 2014-06-24
    • 2020-08-13
    • 2013-08-13
    • 1970-01-01
    • 1970-01-01
    • 2020-10-23
    相关资源
    最近更新 更多