You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu执行git clone时要求非本人GitHub账号验证的求助

问题解决方法

一、清除旧的Git凭据(解决弹出陌生账号验证的核心)

弹出陌生账号验证是因为本地Git缓存了之前存储的GitHub凭据,克隆时自动调用旧信息,按以下步骤清理:

  1. 先查看当前Git使用的凭据助手:
    git config --global credential.helper
    
  2. 根据不同凭据助手清理:
    • 如果返回libsecret(Ubuntu默认常用):
      • 命令行删除GitHub相关凭据:
        secret-tool delete domain github.com
        
      • 图形界面操作:打开“密码和密钥”,找到GitHub相关条目直接删除。
    • 如果返回store:
      • 编辑~/.git-credentials文件,删除包含github.com的行;若不需要保留其他凭据,可直接删除整个文件。
    • 如果返回manager(已安装GCM):
      • 执行命令清除GitHub凭据:
        git credential-manager erase <<EOF
        protocol=https
        host=github.com
        EOF
        

二、克隆目标仓库的正确方式

分两种场景处理:

场景1:目标仓库是公开仓库

直接用HTTPS地址克隆即可,公开仓库无需权限验证。清理凭据后若仍弹出验证,按回车跳过就能完成克隆:

git clone https://github.com/目标账号名/仓库名.git

场景2:目标仓库是私有仓库

你需要先获得仓库访问权限,可选方式:

  • 让仓库所有者将你的GitHub账号添加为协作者,克隆时输入自己的GitHub账号信息(推荐用个人访问令牌PAT代替密码,GitHub已弃用密码验证)。
  • 让仓库所有者生成SSH部署密钥,你将密钥配置到本地SSH后,用SSH地址克隆:
    git clone git@github.com:目标账号名/仓库名.git
    
  • 让仓库所有者生成带临时令牌的HTTPS克隆链接,直接使用该链接克隆,无需输入账号密码。

三、Git Credential Manager(GCM)在Ubuntu上的操作指南

1. 安装GCM

下载适配Ubuntu的GCM .deb 安装包,执行以下命令完成安装:

sudo dpkg -i git-credential-manager_*.deb

2. 配置为全局凭据助手

git config --global credential.helper manager

3. 使用GCM存储凭据

当Git需要验证时,GCM会弹出图形界面或命令行提示,输入你的GitHub账号信息(私有仓库需有权限),凭据会自动存储到系统密钥串,后续操作无需重复输入。

4. 管理已存储凭据

  • 清除指定主机的凭据(比如GitHub):
    git credential-manager erase <<EOF
    protocol=https
    host=github.com
    EOF
    
  • 打开GCM配置界面:
    git credential-manager configure
    

内容的提问来源于stack exchange,提问作者Momen Mahmoud

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.06 19:47:04