当前位置: 首页 > article >正文

Git登录并解决 CAPTCHA

修改公司域账户密码之后,导致今天pull代码时显示:remote error: CAPTCHA required

本文将介绍如何解决 Git 中的常见错误“fatal: Authentication failed for git”。该问题通常出现在尝试访问远程 Git 仓库时,表示身份验证失败。以下是几种常见的解决方法。


1:在浏览器中解决 CAPTCHA

  1. 打开 Bitbucket 网站
  2. 登出并重新登录
    • 可能会要求你完成 CAPTCHA 验证(如图片识别、人机验证等)。
    • 必须完成这个步骤,否则 Git 仍然会被阻止!
  3. 成功登录后,在 Git Bash 重新尝试拉取代码
    git fetch origin
    
  4. 如果 不完成 CAPTCHA 认证,Git 仍然会失败,即使密码正确。


 2:清除旧凭据并重新认证

即使你解决了 CAPTCHA,Git 可能仍会使用存储的 旧凭据,导致持续失败。因此,你需要清除本地缓存的凭据并重新输入密码。

方法 1:删除 Git 缓存的凭据

在终端中运行:

git credential reject http://chinard.hach.ewqg.com:7990

或者,如果上面命令不适用,使用:

git credential reject https://chinard.hach.ewqg.com:7990

然后,尝试拉取代码:

git fetch

Git 会提示你输入新的用户名和密码。


3:手动删除凭据(Windows 用户)

如果你在 Windows 上运行 Git,并且仍然遇到身份验证失败,尝试手动删除存储的凭据:

  1. 打开“控制面板”
  2. 进入 “用户账户” -> “凭据管理器”
  3. 找到 与 Bitbucket 相关的凭据
  4. 删除它们,然后重新尝试 git fetch,Git 会要求输入新的用户名和密码。

4:强制 Git 重新请求凭据

如果仍然失败,可以强制 Git 忽略缓存,要求重新输入凭据:

git -c credential.helper= reset
git fetch

这样,Git 就会再次请求用户名和密码。


 5:切换到 SSH(推荐)

🚀 SSH 认证 vs HTTPS 认证

对比项SSH 认证HTTPS 认证
身份验证方式通过 SSH 密钥对(id_rsa + id_rsa.pub)认证需要用户名 + 密码(或 Git 访问令牌)
安全性更安全,使用非对称加密,无需输入密码需要手动输入密码(或使用 PAT 访问令牌)
操作便捷性免密码,长期有效可能需要频繁输入密码(除非使用凭据管理器)
适用场景推荐用于长期开发,特别是在私有仓库或 CI/CD 环境适用于短期使用,如在陌生设备上快速克隆代码
防止账号锁定不会触发 CAPTCHA 锁定,不会因密码输错被封锁如果多次输错密码,可能触发 Bitbucket/GitHub 的 CAPTCHA 机制导致账户锁定
跨平台支持需要配置 SSH Key,可在 Linux/macOS/Windows 上使用HTTPS 方式适用于所有平台,无需特殊配置
代理支持需要手动配置代理HTTPS 可直接使用系统代理
使用方式git@github.com:user/repo.githttps://github.com/user/repo.git

如果你的团队允许,建议使用 SSH 认证,而不是 HTTPS,这样可以避免 Bitbucket CAPTCHA 锁定的问题:

  1. ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
    
  2. 将公钥 (~/.ssh/id_rsa.pub) 添加到 Bitbucket 的 SSH 设置
  3. 修改 Git 远程 URL
    git remote set-url origin git@chinard.hach.ewqg.com:7990:scm/gaz/fclsc.git
    
  4. 使用 SSH 认证拉取代码
    git fetch
    

6. 确保 Git 使用正确的认证模式

如果仍然遇到 "Must specify at least one AuthenticationModes" 错误,尝试显式指定 Git 认证模式:

git config --global credential.helper cache

或者:

git config --global credential.helper store

然后重新执行 git fetch,并输入正确的用户名和密码。


总结

  1. 必须先在浏览器解决 CAPTCHA 验证,否则 Git 仍然会被阻止!
  2. 清除 Git 缓存的凭据,让 Git 重新请求用户名和密码:
    git credential reject http://chinard.hach.ewqg.com:7990
    
  3. 如果在 Windows 上,检查“凭据管理器”并手动删除相关凭据
  4. 考虑切换到 SSH 认证方式,以避免类似问题

Tips:

平时事务较多,消息可能回复不及时。如果有需要修改或讨论的地方,可以通过常用方式v   x zzyy--0926 联系,欢迎交流! 😊


http://www.kler.cn/a/535769.html

相关文章:

  • 【漫画机器学习】083.安斯库姆四重奏(Anscombe‘s Quartet)
  • c++11总结26——std::regex
  • 深度整理总结MySQL——SQL的执行顺序和流程
  • 【蓝桥杯嵌入式】2_LED
  • 用 Python 绘制爱心形状的简单教程
  • 【数据分析】豆瓣电影Top250的数据分析与Web网页可视化(numpy+pandas+matplotlib+flask)
  • 面向 Workload 级别的灵活可配置 Serverless 弹性解决方案
  • 深入浅出DeepSeek LLM 以长远主义拓展开源语言模型
  • AI对话网站一键生成系统源码
  • Android 约束布局ConstraintLayout整体链式打包居中显示
  • 我们究竟畏惧AI什么?
  • 鸿蒙UI(ArkUI-方舟UI框架)- 使用文本
  • Git仓库托管基本使用02——生成公钥
  • 第八天 继续学习ArkTS,掌握基础语法和组件创建
  • 【蓝桥杯—单片机】第十届省赛真题代码题解题笔记 | 省赛 | 真题 | 代码题 | 刷题 | 笔记
  • React 设计模式:实用指南
  • GPU — 8 卡 GPU 服务器与 NVLink/NVSwitch 互联技术
  • 【AI】DeepSeek来了!!!
  • tolua[一]框架搭建,运行example
  • 【Day33 LeetCode】动态规划DP Ⅵ 背包问题
  • SQL Server的安装和简单使用
  • SQL精度丢失:CAST(ce.fund / 100 AS DECIMAL(10, 2)) 得到 99999999.99
  • 【Uniapp-Vue3】z-paging插件组件实现触底和下拉加载数据
  • 【Elasticsearch】random_sampler聚合
  • Leecode刷题C语言之全排列②
  • Spring Boot + Spring AI快速体验