为什么git要求我输入密码?
问题描述:
我使用的是Windows XP,TortoiseGit(最新版本)和Cygwin。我已经安装了git.exe并在我的路径中。在TortoiseGit中,我可以在不提示输入密码的情况下对远程存储库执行推送。我认为这是因为我在我的.git/config文件中定义了这个...为什么git要求我输入密码?
[remote "origin"]
fetch = +refs/heads/*:refs/remotes/origin/*
url = ssh://[email protected]/myproject.git
puttykeyfile = U:\\.ssh\\mykey.ppk
然而,在Cygwin的,当我的项目(一个根目录所在的文件夹git的是孩子),我得到提示输入密码...
$ git push origin qa_release
[email protected]'s password:
为什么从TortoiseGit试图从Cygwin的推动而不是当我在提示输入密码,我怎样才能Cygwin来表现得像TortoiseGit(即不问我为密码)?
谢谢 - 戴夫
答
puttykeyfile
是windows混帐东西,所以你需要有你的SSH设立的cygwin了。 Git将使用您的常规SSH设置。
.ppk文件是一个常规的SSH公钥吗?如果是这样,请将以下内容添加到您的~/.ssh/config
文件中,以便cygwin git知道在哪里可以找到它。
Host myrepo
IdentityFile /cygdrive/u/.ssh/mykey.ppk
你可以用cygwin中的ssh myrepo
快速测试。
这个变化对我有效。在“主机”下,除了将身份文件从.ppk更改为私钥文件之外,我还添加了“用户myuser”和“主机名myhost”行。谢谢, - – Dave 2012-01-18 14:22:59
顺便说一句,ppk不是SSH公钥。这是一个腻子的私钥。 – gaRex 2012-09-20 08:35:50