1. Git中保存用户名和密码的方式
当我们使用Git客户端与远程仓库进行交互时,需要提供身份验证信息,即用户名和密码。Git有两种保存这些信息的方式:全局保存和本地保存。
1.1 全局保存
全局保存会将我们的身份验证信息保存在Git客户端的全局配置内,并且会被所有的仓库所共享。
$ git config --global credential.helper store
设置全局保存方式后,在输入身份验证信息时,Git将会向我们询问是否要将这些信息保存在本地,如下所示:
Username for 'https://github.com': your-username
Password for 'https://your-username@github.com': your-password
[store] git credential-cache--daemon: cache error: authorization failed
以上提示中,提示了要输入用户名和密码,输入完成后便会自动将身份验证信息保存在本地。
1.2 本地保存
本地保存会将我们的身份验证信息保存在当前仓库的.git/config文件中,只有在该仓库下才能使用。
$ git config credential.helper store
使用本地保存方式时,Git仍会向我们询问是否要将身份验证信息保存在本地,注意这里已经没有--global选项了,如下所示:
Username for 'https://github.com': your-username
Password for 'https://your-username@github.com': your-password
[store] git credential-cache--daemon: cache error: authorization failed
2. 如何删除Git中保存的用户名和密码信息
身份验证信息保存在本地或全局配置文件中,在某些情况下,我们可能需要删除Git保存的这些信息。下面将介绍两种方法来删除Git中保存的用户名和密码信息。
2.1 方法一:使用命令行删除
使用Git命令行可以删除全局配置或本地配置中保存的身份验证信息。
2.1.1 删除全局配置中保存的身份验证信息
当我们想要删除全局配置中保存的身份验证信息时,需要使用以下命令:
$ git config --global --unset-all credentials.helper
该命令将会删除全局配置中所有与身份验证信息有关联的配置项,包括保存密码的选项,如下所示:
Before:
$ git config --global --list
credential.helper=store
After:
$ git config --global --unset-all credentials.helper
$ git config --global --list
成功执行命令后,再次尝试使用Git操作时,便会提示我们重新输入身份验证信息。
2.1.2 删除本地配置中保存的身份验证信息
当我们想要删除本地配置中保存的身份验证信息时,需要使用以下命令:
$ git config --unset-all credentials.helper
该命令将会删除当前仓库下所有与身份验证信息有关联的配置项。
Before:
$ git config --list
credential.helper=store
After:
$ git config --unset-all credentials.helper
$ git config --list
成功执行命令后,再次尝试使用Git操作时,便会提示我们重新输入身份验证信息。
2.2 方法二:使用GUI界面删除
当我们不想使用命令行时,我们可以使用Git客户端自带的GUI界面来删除Git中保存的身份验证信息。
在Windows系统下,我们可以通过以下步骤来删除本地保存的身份验证信息:
打开Git Bash客户端,进入到本地仓库所在的目录;
运行以下命令显示GUI界面:
$ git config --global --edit
此时,会打开Git全局配置文件,在文件中添加以下内容:
[credential]
helper = cache --timeout=3600
然后,保存文件并关闭编辑器,再次运行以下命令显示GUI界面:
$ git config --global --edit
此时,会打开Git全局配置文件,在文件中将[credential]后的内容删除,保存文件并关闭编辑器,如下所示:
[credential]
helper = cache --timeout=3600
接下来,在Git Bash客户端中输入以下命令,打开Windows凭据管理器:
$ rundll32.exe keymgr.dll, KRShowKeyMgr
在凭据管理器中,我们可以看到保存在Windows系统中的所有凭据。找到Git凭据,选中并点击“删除”按钮,即可删除Git保存的身份验证信息。
3. 总结
本文主要介绍了Git保存身份验证信息的两种方式,以及如何删除保存的身份验证信息。在Git操作过程中,正确地管理好身份验证信息,可以保护我们的代码和数据安全。