欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 汽车 > 时评 > idea开发工具清除Git凭证(含Git凭证管理策略)

idea开发工具清除Git凭证(含Git凭证管理策略)

2024/10/24 12:31:52 来源:https://blog.csdn.net/Bb15070047748/article/details/139592119  浏览:    关键词:idea开发工具清除Git凭证(含Git凭证管理策略)

前言

网上很多人出现这个问题,也有很多文章或博客来说明这个问题,但是几乎都没有说到点子上,全网几乎都说清除credential.helper配置或者清空windows凭证管理器,还有一些文章说清除IDEA缓存,其实都是不对的。

credential.helperwindows凭证管理器是有其他含义的,另外清除IDEA缓存并不能清除掉IDEA保存的Git凭证。

问题解决

首先把问题解决了。

在使用idea进行推送代码到远程仓库时,默认第一次会弹出如下对话框,输入用户名和密码之后即可推送,如果勾选了“Remember”,那么下次再使用idea进行代码推送时则不需要输入用户名和密码,即可直接推送。

在这里插入图片描述
IDEA记住凭证后以后推送都会使用该用户名和密码进行推送,如果这个时候需要切换一个凭证进行推送(换一个gitee账号进行推送)则无法进行。

当然如果当前IDEA保存的这个Gitee账号的密码更改了,那么使用idea进行推送时idea会重新弹出对话框让我们重新输入一次用户名和密码。

如果此时更换另一个Gitee账号的仓库进行推送,IDEA同样也会重新弹出输框让我们重新输入用户名和密码,但是这样操作很麻烦。

如图所示,我们更换一个项目地址(需要是其他Gitee账号的项目地址),然后再次推送,IDEA就可以弹出输入框让我们重新输入用户名和密码了。

在这里插入图片描述

我们如果只是想清楚IDEA保存的Git凭证只需要打开IDEA的设置,找到Appearance & Behavior—>System Settings—>Passwords,如下图所示,清除IDEA保存的凭证信息,如图所示:

在这里插入图片描述

清除IDEA保存的Git凭证后,重新推送项目,IDEA又会弹出一个新的输入框让我们输入新的用户和密码了,如图所示:

在这里插入图片描述

Git的凭证管理器

credential.helper配置用于设置Git的凭证管理器策略,至于windows凭证管理器只是Git的凭证管理策略中的一种。

credential.helper配置有如下参数:

  • cache:将凭证存储在内存中。默认情况下,凭证会被缓存15分钟。可以使用--timeout <seconds>来延长时间。
  • store:将凭证存储在磁盘中。默认存储在C:\Users\${user}\.git-credentials中。

Tips:${user}是当前Windows的账户

  • manager:使用系统的凭证管理器(如果是windows系统则存储在windows的凭证管理器中)。

使用示例:

# 设置system级别的凭证管理,凭证管理采用store策略(将Git的凭证存储在磁盘中)
git config --system credential.helper store# 清除system级别的Git的凭证管理配置
git config --system --unset credential.helper

Git的凭证管理与IDEA的凭证管理

采用credential.helper配置可以设置Git的凭证管理,可选值有cachestoremanager等,无论选择了那个配置,都可以存储Git的凭证,下次采用Git进行推送时就不需要输入用户名和密码了。

但是IDEA开发工具进行代码推送时并没有使用Git提供的凭证管理,也就是credential.helper配置对IDEA工具无效。

即使设置了credential.helper,那么使用IDEA开发工具进行推送时也会提示重新输入用户名和密码。如此时勾选了“Remember”,那么IDEA将会把凭证存储在C:\Users\${user}\AppData\Roaming\JetBrains\IntelliJIdea2023.2\c.kdbx文件中,我们可以使用之前提到的方法来清空IDEA保存的Git凭证。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com