可以将Git配置为remember passwords。
如何检查给定的域是否存储了密码?
我在https://git-scm.com/docs/git-credential上找到了一种可用的API。
例如,假设我们对GitHub凭据感兴趣,并且用户名存储在gitconfig中,我们可以运行
inline std::vector<T> vec;
,如果凭据高速缓存中有密码,它将返回密码。不幸的是,如果密码不可用,它将锁定(并要求用户指定密码),这使它不适合脚本。
https://git-scm.com/docs/gitcredentials似乎没有解决此问题的有用信息。
为避免XY问题:我有一个脚本,该脚本应该自动从一个存储库中推送提交。它可以等待推送,直到用户通过身份验证并且GitHub凭证缓存记住了密码。
我强烈希望使用跨平台的解决方案(我将在Linux上使用它,但是我不希望在开始使用其他操作系统时不重写git设置)。
答案 0 :(得分:1)
Microsoft GCM (Git Credential Manager)包括非交互模式支持。
通常(与操作系统无关),custom credential manager始终包含以下命令:
get
store
erase
一个get
后跟一个grep
应该足以确认域是否在该凭据帮助器中注册了密码。