技术记录栈

记录点滴:java、datebase、linux、spring、javascript、nginx

2018/11/21

Git保存用户名和密码

Git每次提交/更新(push/pull/fetch)都提示输入用户名和密码,很繁琐也很浪费时间。

通过运行git config credential.helper 命令后,在下次输入用户名和密码时git会记录并用于以后的操作。

git config credential.helper'store [<options>]'

git-credential-store - git将凭据存储在磁盘上

使用此选项git会将未加密的密码存储在磁盘上,此密码存储仅受文件系统权限的保护。如果这不能接受的这种安全级别,可以尝试git-credential-cache命令,或者与操作系统提供的安全存储程序进行集成。

git config credential.helper'cache [<options>]'

git-credential-cache - 临时将git用户名密码存储在内存中

$ git config credential.helper 'cache --timeout=300' 

设置git用户名密码超时时间

此命令将凭证缓存在内存中以供Git程序使用,在可选的超时设置失效后会被清除,缓存内容可通过Unix域套接字访问,并通过文件系统的权限,把数据限制在当前用户。示例:

$ git config credential.helper cache
$ git push http://example.com/repo.git
Username: <type your username>
Password: <type your password>

[work for 5 more minutes]
$ git push http://example.com/repo.git
[your credentials are used automatically]

参考:

https://git-scm.com/docs/git-credential-store

https://git-scm.com/docs/git-credential-cache