我正在运行最新的Git For Windows 2.29.2,对我credential.helper
来说默认设置为manager-core
。我确实确认运行git config --system --list
.
我想为 GitHub 上的任何 git 操作实现基于令牌的身份验证。所以我继续从Control-Panel-> Credential manger -> Windows Credential -> Generic Credentials
. 然后我执行了命令:
git credential fill
protocol=https
host=github.com`
<HIT ENTER KEY TWICE, as A blank line signals input completion>
令我惊讶的是,上面的命令仍然返回凭据。我回到控制面板并确认它是否被删除并且我看不到凭据,即它们已经被删除。
为什么上面的命令成功地返回了凭据。据我所知,git 也会在内存中缓存 15 分钟的凭据。然而,上面的命令在几个小时后仍然返回了凭据。我尝试打开新的提示,但直到今天才走运,大约一天后我碰巧注意到该行为不再可重现。
现在它按预期工作,即如果我从控制面板的凭据管理器中删除凭据,git credential fill
则无法返回任何凭据,而是提示我输入凭据。
git credential fill
即使我在几个小时后尝试,为什么首先返回凭据?我只是无法理解这种行为。