如果没有存储信息,有没有办法在Windows上运行Git Credential帮助程序而不要求用户名/密码?
git credential
命令提供fill
命令,允许检索Git存储库的凭据。如果存储了凭据信息,则会将其打印到stdout
。
如果请求的仓库没有存储信息,则会打开提示或Windows对话框以询问凭据。这可以避免吗?
要复制:
git credential fill
,然后在命令窗口中输入以下内容: url=http://foo [ENTER]
[ENTER]
确保以两个空行结束,告诉凭证助手您的输入已完成。
由于Git凭据助手不应该拥有此存储库的任何存储信息,因此它会提示您输入凭据。在Windows上,这是使用系统凭据对话框完成的(类似于登录对话框)。
有没有办法避免这个提示?我正在寻找的东西就像返回代码,表明没有存储的信息用于请求的仓库。目前,这似乎不可能,凭证助手总是要求凭证。
答案 0 :(得分:1)
似乎没有办法避免提示凭据。
我通常使用不同的凭据帮助程序,基于an gpg-encrypted .netrc
(或Windows上的_netrc
)和官方contrib/credential/netrc/test.netrc
perl脚本I modify a bit。
这样,我只需要在会话期间输入一个密码,并且所有存储在加密.netrc
中的不同凭据可用于所有网站。< / p>
由于正在运行gpg代理,因此我不必在当前会话期间输入相同的密码。
我使用相同的脚本来检查网站是否包含凭证信息:
echo host=a.site.com | ./git-credential-netrc -f path/to/.netrc.asc get
任何git凭证助手都应该遵守“get
”命令,因此请检查类似命令是否适用于git-credential-winstore
命令。