存储或缓存git clone密码的位置?

时间:2017-04-25 17:04:31

标签: git github github-for-windows

环境定义:

背景

当我发出如下所示的克隆命令时:

git clone https://UserName@Url.com:443/name.git

Git第一次提示我输入密码。然后它存储或缓存在某个地方。

问题

Windows中存储或缓存的密码在哪里? 是否有任何git命令列出所有存储库的缓存/存储凭据?

更多澄清请求

这取决于git实现吗?我问的原因低于两点:

  • 似乎当我使用来自https://git-scm.com/的原始git时,它会将密码存储在Windows密码保险库中。我可以看到一些git用户名和密码
  • 但是,我找不到由Github" Git shell"高速缓存/存储的密码。任何地方

根据@milouk响应更新1:

在Windows环境中,我尝试过Github" Git shell"并克隆了一个存储库。它没有要求任何密码,所以我假设它使用缓存密码。 ,我尝试了下面的命令,它没有返回任何东西。

git config --global credential.helper wincred

这是因为Github" Git shell"是不是标准的git客户端?

根据@milouk响应更新2:

我知道密码可能已缓存在内存中。

  • 有没有办法获得缓存在内存中的凭据列表?
  • 有没有办法清理缓存在内存中的凭据,所以我不必重新启动以确保输入更新的密码?

1 个答案:

答案 0 :(得分:2)

git提示您输入用户名和密码的原因是因为您正在使用存储库的HTTPS克隆URL。

避免此提示的最佳方法是键入(如果您使用的是Windows):

git config --global credential.helper wincred

在您的命令行上。

或者如果您使用的是Linux类型:

git config --global credential.helper cache

设置git以使用凭证内存缓存

git config --global credential.helper 'cache --timeout=3600'

将缓存设置为1小时后超时(设置以秒为单位)。

要回答您的问题,凭据会缓存到内存中。因此,即使使用上述命令重新启动计算机,您也必须再次输入您的凭据。

您还可以查看here以获得更详细的说明。