Sourcetree(Git)命令行中的公钥问题

6

我通常在Linux上使用Git,对于Windows(C#项目)上的SourceTree不熟悉,它的界面很有用,可以跟踪树形结构,但我想使用命令行。

我真的不明白,我使用SourceTree代理生成了我的ssh密钥,并使用“Pageant”加载了它,我将公钥添加到了我的bitbucket账户中。

它起作用了,我可以从SourceTree界面克隆/拉取/推送。

使用SourceTree界面获取

但是使用SourceTree命令行模式不起作用。

命令行不起作用

4个回答

4
  1. SSH Key 设置为 PuTTY 私钥 (.ppk),并将 SSH Client 设置为 PuTTY / Plink
  2. 将环境变量 GIT_SSH 设置为 plink.exe 的路径,例如:C:\Program Files (x86)\Atlassian\SourceTree\tools\putty\plink.exe

当然,您也可以在 %HOMEPATH%\.ssh\id_rsa 中使用单独的全局 OpenSSH 密钥,但这样您将失去 SourceTree 自动加载正确密钥的优势。

顺便说一句,我可以确认以下两种方法都不可行:

  • SSH Key 设置为 OpenSSH 私钥,使用 OpenSSH 作为 SSH Client
  • SSH Key 设置为 PuTTY 私钥,并使用 PuTTY / Plink 作为 SSH Client

2
这对我有用。具体来说,缺少GIT_SSH环境变量导致了问题。一旦添加了指向我自己独立安装的PuTTY的PLINK.EXE路径的变量,一切都很好。 - CraigTP

1

对我来说,以上内容都不是必须的。唯一需要考虑的方面是,默认情况下git(和其他应用程序)希望您的ssh密钥位于c:/users/<user>/.ssh。注意点号!在我将ssh文件夹重命名为.ssh之后,一切开始正常工作。


0

你需要从控制台生成公钥。

像这样

 ssh-keygen

它将生成公钥,您可以将其添加到Bitbucket中

有关更多信息,请访问Tutorial


0
"C:\Users\username\AppData\Local\SourceTree\app-3.4.8\tools\putty\plink.exe" bitbucket.org
更改用户名和应用程序-

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接