我正在使用sourcetree,通过ssh配置repo并且所有操作都没有问题,但是通过git bash我无法执行单次提取或拉取:
git fetch
output: Permission denied (publickey).
fatal: Could not read from remote repository.
有没有办法让git使用这个有效的sourcetree配置?
答案 0 :(得分:1)
我假设您使用的是Windows。您可以将Git与OpenSSH或Plink(PuTTY)一起使用。当您在SourceTree中使用plink时,您的SSH密钥将从PuTTY(例如pagent)或您使用SourceTree配置的内容中读取,当您在另一侧使用Git Bash和OpenSSH时,它们将从〜/ .ssh / id_whatever中读取。
要解决此问题,请在两个客户端中使用相同的SSH技术。要在SourceTree中更改它,转到首选项,在Git Bash中更改它,我认为您需要重新安装它。在安装过程中,系统会询问您是使用plink还是OpenSSH。
答案 1 :(得分:1)
我终于找到了解决方案:
答案 2 :(得分:0)
在您的计算机上生成SSH密钥对:
ssh-keygen -t rsa -C "your.email@example.com" -b 4096
将公钥复制到repo:
cat ~/.ssh/id_rsa.pub
运行cat将显示公钥。您还可以使用SCP或其他内容复制公钥。