如何长时间设置git cache --timeout?

时间:2019-05-30 11:17:10

标签: git github

这里Git push requires username and password我阅读了如何从github推入/拉出 在命令行中运行git命令时,请勿输入登录名/密码。

我接下来找到了:

git config --global credential.helper 'cache --timeout 7200'
  

启用凭据缓存后,它将缓存7200秒   (2小时)。

我认为这太小了2个小时,并尝试通过命令设置200个小时的速度:

git config --global credential.helper 'cache --timeout 7200000'

我在本地服务器和远程服务器上都拥有Ubuntu 18。

但是第二天我运行github(我认为已经过去了10到12个小时)时,它没有工作。

此缓存选项是否有某些小时限制,或者出了什么问题?

谢谢!

1 个答案:

答案 0 :(得分:3)

根据您的评论,缓存似乎可以在您的服务器(很少重新启动)上正常工作,但在您的笔记本电脑(经常重新启动)上却无法正常工作。

git-credential-cache 的文档是这样说的:

<块引用>

此命令将凭据缓存在内存中以供将来的 Git 程序使用。存储的凭据永远不会触及磁盘,并且会在可配置的超时后被遗忘。

由于凭据仅存储在内存中,因此每次重新启动时都会丢失它们是有道理的。鉴于此,我可以想到一些解决方法:

  1. 改用 git-credential-store,这会将您的凭据永久保存到磁盘。请注意,这将使它们完全未加密,因此根据您的安全需求,这可能不起作用。
  2. 继续使用缓存,但不要关闭/重新启动您的笔记本电脑,而是尝试使用挂起或休眠模式。这将保持您机器的当前状态并防止每次使用笔记本电脑时清除内存,因此凭据应持续到超时为止。