git credential-store
名称
git-credential-store - 帮助者将证书存储在磁盘上
概要
git config credential.helper 'store [options]'
描述
注意 | 使用这个帮助程序会将你的密码存储在磁盘上,只受文件系统权限保护。如果这不是一个可以接受的安全权衡,请尝试使用 git-credential-cache1,或者找到一个与操作系统提供的安全存储集成的帮助器。 |
---|
该命令将无限期地将证书存储在磁盘上供将来的 Git 程序使用。
你可能不想直接调用这个命令; 它意味着被 git 的其他部分用作凭证助手。请参阅 gitcredentials [7]或EXAMPLES
以下。
选项
--file=<path>
使用<path>
查找和存储凭据。该文件将设置文件系统权限,以防止系统上的其他用户读取它,但不会被加密或以其他方式保护。如果没有指定,凭据将搜索从~/.git-credentials
和$XDG_CONFIG_HOME/git/credentials
和证书将被写入到~/.git-credentials
如果存在的话,或者$XDG_CONFIG_HOME/git/credentials
如果它存在,前者没有。另请参阅文件。
文档
如果没有明确设置--file
,则有两个文件,其中 git-credential-store 将按优先顺序搜索凭据:
~/.git-credentials
用户特定的凭据文件。
$XDG_CONFIG_HOME/git/credentials
第二个用户特定的凭证文件。如果$XDG_CONFIG_HOME
没有设置或为空,$HOME/.config/git/credentials
将被使用。如果~/.git-credentials
具有匹配的凭证,则不会使用存储在此文件中的任何凭证。如果你有时使用不支持它的老版本 Git,不建立这个文件是个好主意。
对于凭证查找,将按照上面给出的顺序读取文件,发现第一个匹配的凭证优先于在列表下方的文件中找到的凭证。
凭证存储将默认写入列表中的第一个现有文件。如果这些文件都不存在,~/.git-credentials
将被创建并写入。
擦除证书时,匹配的证书将从所有文件中删除。
示例
这个帮手的重点是减少你输入用户名或密码的次数。例如:
$ git config credential.helper store $ git push http://example.com/repo.git Username: <type your username>Password: <type your password>[several days later]$ git push http://example.com/repo.git[your credentials are used automatically]
存储格式
.git-credentials
文件以明文形式存储。每个凭证都按照以下形式存储在自己的行中:
https://user:pass@example.com
当 Git 需要对特定 URL 上下文进行身份验证时,凭证存储会将该上下文视为与凭证文件中的每个条目相匹配的模式。如果协议,主机名和用户名(如果我们已经有一个)匹配,那么密码将返回给 Git。有关更多信息,请参阅 gitcredentials [7]中的配置讨论。