是否可以在 git 中缓存每个终端会话的用户凭据?

问题描述

我们能够在指定的时间段内保存用户凭据

git config --global credential.helper cache --timeout <the time to save the credentials in seconds>

但是是否可以改为为每个终端会话保存凭据?我的意思是我希望我的凭据为当前打开的终端无限期地存储,但是一旦我重新启动终端或打开一个新会话,我就必须再次登录并缓存该特定终端会话。这可能吗?我觉得计时器方法有点烦人。

解决方法

git credential cache 在内存中缓存凭据,但这意味着任何新的终端会话都将访问该共享内存。

因此,您需要编写 own git-credential-xxx helper 以将范围限制为终端会话。