焦点

修改本机git账号密码

时间:2010-12-5 17:23:32  作者:知识   来源:娱乐  查看:  评论:0
内容摘要:git账号密码过期那天,我正赶着推送一个紧急修复。终端里敲下git push,结果弹出一行刺眼的红字:Authentication failed。那一瞬间,脑子是空的。远程仓库进不去,本地代码全白改。

git账号密码过期那天,修改我正赶着推送一个紧急修复。本机终端里敲下git push,号密结果弹出一行刺眼的修改红字:Authentication failed。那一瞬间,本机脑子是号密空的。远程仓库进不去,修改本地代码全白改。本机

网上的号密教程大多让你去改远程地址,塞进用户名密码,修改像这样:git remote set-url origin https://用户名:密码@github.com/xxx.git。本机这招确实快,号密但密码明文躺在配置文件里,修改跟把钥匙贴在门框上没区别。本机而且GitHub早就取消了密码直连,号密得用token。所以,第一步先认清你用的什么平台——GitHub用token,GitLab看公司配置,Gitee可能还是老一套。

我习惯的做法是直接清掉本地缓存的凭证。Windows上,打开控制面板里的“凭据管理器”,找到git:https://github.com这一条,删掉。macOS就麻烦点,钥匙串访问里搜github,右键删除。删完再执行一次git push,系统会重新弹窗让你输入新密码或token。这个过程很暴力,但干净。

如果你不想动系统设置,也可以只在当前仓库里改。先查看当前配置:git config --list,找到remote.origin.url这一行。如果URL里带了旧密码,直接改掉:git remote set-url origin https://新用户名:新token@github.com/xxx.git。注意,token里如果含特殊字符,比如@或者:,得先URL编码,否则git会解析错位。我踩过这个坑,token里有个#,结果怎么推都是403,最后用%23替换才通过。

还有个偏方,适合临时应急。用环境变量注入凭证:export GIT_ASKPASS=true,然后直接push,git会调用交互式输入。这个方法不写盘,但每次都要手动输,适合一次性操作。

改完之后,验证一下是否生效。别急着推大代码,先git fetch试试,能拉下来说明认证通了。如果还是失败,八成是token权限没勾选repo范围,去平台设置里重新生成一个,勾全再试。

最后说个细节:很多人改完密码,忘了更新git全局配置里的用户名邮箱。如果推送时报错user.name相关,那跟密码无关,是身份信息没对上。用git config --global user.name "你的名字"和git config --global user.email "你的邮箱"重新设一遍就行。

整个过程五分钟搞定,但每次出问题都让人烦躁。现在我学乖了,在本地写了个小脚本,一键清凭证、改URL、测试连接。工具这东西,顺手比花哨重要。

最近更新
热门排行
copyright © 2026 powered by 力不从心网   sitemap