MsysGit git-cmd.bat CLI:如何指定我的公钥

时间:2013-06-24 15:07:10

标签: git authentication msysgit

首先让我说清楚......我对git的信心仍然在黑暗的角落里畏缩:) 我们最近一直在内部使用它,而我 开始 以获得它的支持,但我还有几个小时可以放入在我拿到执照之前;)

我们的Intranet中有一个存储库,当使用git-cmd cli时,git在尝试进行身份验证时会在默认位置查找默认密钥。
我们的存储库使用不同的密钥。

是否有一个git配置文件或者我可以编辑的东西放在正确密钥的路径中? 如何设置凭据?

2 个答案:

答案 0 :(得分:1)

简短回答

如果您通过HTTPS访问存储库,则可以使用http.sslKey配置或GIT_SSL_KEY环境变量来指定其位置(see the git config docs)

答案很长

通常,私钥的位置无关紧要,因为理想情况下它们存储在密钥代理中,您需要弄清楚的是如何让Git使用密钥代理。

(事实上,理想情况下,私人应该有密码,因此每次重新输入密码都不实用。关键代理是简化这一点。)

由于每个人都应该使用受密码保护的私钥,并因此使用密钥代理来实现密码,因此不必配置密钥文件的位置。

在Windows中,我使用pageant作为密钥代理,它是PuTTY tools的一部分。只需运行pageant.exe并添加您的私钥即可。接下来,要让Git使用pageant获取您的私钥,您需要将GIT_SSH环境变量设置为指向plink.exe,例如/c/path/to/putty/plink.exe。您可以在环境变量中将其设置为这样,即使它使用UNIX样式的路径分隔符。

我不熟悉TortoiseGit,但我猜测它可能有它自己的plink.exe,你也可以使用它。因为你已经有TortoiseGit工作,我你可能根本不需要密钥代理,只需设置GIT_SSH。但这些只是猜测。我用PuTTY和pagent描述的设置应该可以工作,因为我自己使用它。在任何情况下,你应该使用密钥代理,并使用密码短语等保护你的密钥等。

答案 1 :(得分:0)

Generating SSH Keys

# Creates a new ssh key using the provided email
ssh-keygen -t rsa -C "your_email@example.com"

GitHub user to be the committer when I do a local commit?