git跳过用户名密码验证,以及配置credential-helper

平时我们在使用git命令时,如果使用http方式拉取代码每次都需要使用填写用户名和密码,非常的麻烦。
git跳过用户名密码验证,以及配置credential-helper_第1张图片

如何才能绕过每次繁琐的填充?

如果想要绕过git的交互方式,首先需要了解git的密码存储机制。
git使用的使用是一种名叫**[credential helper]**的工具来完成用户名密码存储的。
可以通过git config --global credential.helper命令来查看本机使用的哪种方式,或者查看用户目录下的.gitconfig文件
可以通过命令git config --global credential.helper cache/store/manager-core设置密码存储方式。
git跳过用户名密码验证,以及配置credential-helper_第2张图片

以下是**[credential helper]**的几种存储方式:

①cache:cache 将凭据在内存中进行短时间的缓存。使用的比较少。
②store:store通过明文的方式将用户名和密码保存到用户目录下,可以使用记事本直接打开:
git跳过用户名密码验证,以及配置credential-helper_第3张图片

如果使用这种方式,可以通过修改**.git-credentials文件的方式绕过填充和密码修改,形如:https://username:[email protected]。如果是首次使用需要创建该文件。git config --global credential.helper store --file=xxxxx可以设置读取.git-credentials**文件的位置。

③manager-core:如果是windows机器,可以使用名为windows凭据的**[credential helper]**工具,这是一种windows自带的密码管理器,非常适合存储git用户名和密码。如下图:
git跳过用户名密码验证,以及配置credential-helper_第4张图片

如果想以这种方式存储git的用户名和密码,就需要使用cmd命令了

//删除某个windows凭据
cmdkey /delete:git:https://gitee.com
//添加某个windows凭据
cmdkey /generic:git:http://gitee.com /user:%username% /password:%password%

note:使用之前需要先查看[credential helper]以哪种方式存储

此外**[credential helper]**工具还支持配置多种存储方式。当查找特定服务器的凭证时,git 会按顺序查询,并且在找到第一个符合条件的机器时就返回。配置如下:

[credential]
    helper = manager-core 
    helper = store --file c:\\.git-credentials
    helper = cache --timeout 30000

你可能感兴趣的:(git)