如何使用Cygwin进行git推送?

时间:2013-08-20 05:40:10

标签: git ssh cygwin

经过大量的谷歌搜索和故障排除后,我相信我已经确定Cygwin在SSH服务时不会发送其SSH私钥,除非你明确告诉它。我可以使用IdentityFile行在我的SSH配置文件中执行此操作,但是在使用git时我不知道如何执行此操作。

这次,我特意试图推送给GitHub。我的SSH密钥已添加。以前,在设置配置文件并添加IdentityFile行之前,我无法进行SSH操作。现在我可以成功SSH到GitHub,但不能git push。

任何人都知道怎么解决这个问题?

非常感谢!

编辑:要清楚,当我尝试git push时,我收到以下错误:

$ git push
Permission denied (publickey).
fatal: The remote end hung up unexpectedly

但我可以通常SSH:

$ ssh github
Hi ______! You've successfully authenticated, but GitHub does not provide shell access.
Connection to github.com closed.

Edit2 with solution:

用户'Cupcake'建议将我的密钥添加到ssh-agent。我跑了:

$ ssh-add <private key path>

现在它有效。谢谢!

1 个答案:

答案 0 :(得分:1)

我个人使用PuttyCyg直接将Putty添加到我的Cygwin安装中。这样可以让我访问Putty的ssh实现,以及Putty的终端,我发现它比Cygwin更易于配置和减少错误。

有关如何设置PuttyCyg以及一些注释和配置文件的说明列表,请参阅effective-cygwin GitHub页面。