从凭证助手中列出git凭证

jv2fixgn  于 2023-08-01  发布在  Git
关注(0)|答案(3)|浏览(168)

看起来是个简单的问题,但我找不到解决方案,在该高速缓存中存储的 git config credentials(用户名和个人访问令牌)中,git config --list返回如下凭据信息

credential.helper=cache

字符串
是否可以从该高速缓存中看到凭据,我尝试了以下三个位置
1.(repository_home)/.git/config-没有关于 * 用户名 * 和 * 密码 * 的信息

  1. ~/.gitconfig-在存储库文件夹中找不到文件
ttcibm8c

ttcibm8c1#

git-credentialgit credential fill在这里可能是有用的,你需要输入主机和协议详细信息来获取用户名和密码。

$ git credential fill
protocol=https
host=example.com

字符串
输出量:

protocol=https
host=example.com
username=bob
password=secret

5gfr0r5j

5gfr0r5j2#

您可以从凭证帮助程序中查询一组特定的凭证,但是凭证帮助程序协议中没有允许您查询所有凭证的部分。一般来说,这很困难,因为凭据助手可以响应与模式匹配的所有凭据,例如https://*.example.orghttps://github.com/bk2204/*,并且该模式不需要与任何可以表达的简单模式匹配(例如,助手可以非常了解用户可以基于LDAP访问哪些存储库)。
对于cache凭据帮助程序,没有枚举这些凭据的方法。
如果您想查找特定URL的凭据,最简单的方法如下:

echo url=https://github.com/git/git.git | git credential fill

字符串
这将打印任何凭据帮助程序都知道的凭据。您可以在gitcredentials(7)手册页中查看有关该协议的更多信息。

uz75evzq

uz75evzq3#

git credential的输入/输出格式在这里记录,可以与echo(一个属性)或printf(多个属性)一起使用。

echo url=https://github.com/git/git.git | git credential fill
# or
printf "protocol=https\nhost=github.com"  | git credential fill

字符串
这将适用于任何注册的凭证助手,其列表已在Git 2.42(2023年第3季度)中扩展:
参见commit 4c9cb51(2023年7月8日),作者M Hickford ( hickford )
(由Junio C Hamano -- gitster --合并于commit d6e6722,2023年7月18日)

doc:我的天啊!gitcredentials:链接到辅助列表

签收人:M·希克福德
链接到凭据帮助程序的社区列表。
这对用户来说是有用的信息。
描述OAuth凭证帮助器如何工作。
OAuth是个人访问令牌和SSH密钥的用户友好的替代方案。
降低的安装成本使用户更容易为跨多个锻造的项目做出贡献。
gitcredentials现在在其手册页中包括:

可用助手

社区在https://git-scm.com/doc/credential-helpers上维护了一个完整的Git凭证助手列表。

OAuth

输入密码或个人访问令牌的另一种方法是使用OAuth凭证助手。初始身份验证将打开一个浏览器窗口到主机。后续身份验证在后台进行。许多流行的Git主机支持OAuth。

相关问题