目录搜索
GuidesgitattributesgiteverydaygitglossarygitignoregitmodulesgitrevisionsgittutorialgitworkflowsAdministrationgit archivegit bundlegit cleangit filter-branchgit fsckgit gcgit instawebgit reflogBasic Snapshottinggit addgit commitgit diffgit mvgit resetgit rmgit statusBranching and Merginggit branchgit checkoutgit loggit mergegit mergetoolgit stashgit tagDebugginggit bisectgit blamegit grepEmailgit amgit format-patchgit request-pullgit send-emailExternal Systemsgit fast-importgit svnGetting and Creating Projectsgit clonegit initGitgit annotategit archimportgit bisect-lk2009git check-attrgit check-mailmapgit check-ref-formatgit checkout-indexgit cherrygit citoolgit columngit credentialgit credential-cachegit credential-storegit cvsexportcommitgit cvsimportgit cvsservergit diff-filesgit diff-treegit difftoolgit fast-exportgit fetch-packgit fmt-merge-msggit get-tar-commit-idgit guigit http-backendgit http-fetchgit http-pushgit imap-sendgit index-packgit interpret-trailersgit ls-remotegit ls-treegit mailinfogit mailsplitgit merge-filegit merge-indexgit merge-one-filegit merge-treegit mktaggit mktreegit name-revgit notesgit p4git pack-objectsgit pack-redundantgit pack-refsgit parse-remotegit patch-idgit prunegit prune-packedgit quiltimportgit receive-packgit remote-extgit remote-fdgit remote-testgitgit repackgit replacegit rereregit send-packgit sh-i18ngit sh-setupgit shellgit show-branchgit show-indexgit stripspacegit unpack-filegit unpack-objectsgit upload-archivegit upload-packgit vargit verify-commitgit verify-taggit whatchangedgit worktreeInspection and Comparisongit describegit shortloggit showMiscellaneousapi credentialsapi indexgitcligitcore tutorialgitcredentialsgitcvs migrationgitdiffcoregithooksgitkgitnamespacesgitremote helpersgitrepository layoutgitsubmodulesgittutorial 2gitwebgitweb.confpack formatUser ManualPatchinggit applygit cherry-pickgit rebasegit revertPlumbing Commandsgit cat-filegit check-ignoregit commit-treegit count-objectsgit diff-indexgit for-each-refgit hash-objectgit ls-filesgit merge-basegit read-treegit rev-listgit rev-parsegit show-refgit symbolic-refgit update-indexgit update-refgit verify-packgit write-treeServer Admingit daemongit update-server-infoSetup and Configgitgit configgit helpSharing and Updating Projectsgit fetchgit pullgit pushgit remotegit submodule
文字

名称

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]中的配置讨论。

上一篇:下一篇: