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

如何让300+历史提交及近数月提交显示在贡献图中?

GitHub贡献图不显示提交的解决办法

GitHub贡献图只统计满足特定条件的提交,以下是针对你遇到的两种情况的具体解决方案:

一、已有300+提交未显示的处理

1. 核对提交邮箱的有效性

GitHub只会统计与你账号绑定且已验证的邮箱对应的提交。先检查项目里的提交邮箱是否符合要求:

  • 运行命令查看项目提交的邮箱:git log --pretty=format:"%ae"
  • 对比GitHub账号设置里的邮箱(必须是已验证状态)。如果邮箱不匹配,需要批量修改提交历史的邮箱:
    在项目根目录执行以下脚本(替换成你的旧邮箱、正确的用户名和已验证邮箱):
    git filter-branch --env-filter '
    OLD_EMAIL="你的旧邮箱地址"
    CORRECT_NAME="你的GitHub用户名"
    CORRECT_EMAIL="已验证的GitHub邮箱"
    if [ "$GIT_COMMITTER_EMAIL" = "$OLD_EMAIL" ]
    then
        export GIT_COMMITTER_NAME="$CORRECT_NAME"
        export GIT_COMMITTER_EMAIL="$CORRECT_EMAIL"
    fi
    if [ "$GIT_AUTHOR_EMAIL" = "$OLD_EMAIL" ]
    then
        export GIT_AUTHOR_NAME="$CORRECT_NAME"
        export GIT_AUTHOR_EMAIL="$CORRECT_EMAIL"
    fi
    ' --tag-name-filter cat -- --branches --tags
    
    执行完后强制推送到远程:git push --force --tags origin 'refs/heads/*'

    注意:如果是多人协作项目,强制推送会覆盖远程历史,务必提前和团队沟通。

2. 检查仓库权限和贡献设置

  • 如果是私有仓库,进入GitHub账号设置的「Contributions」页面,勾选「Include private contributions on my profile」
  • 确认你是仓库的直接成员,而非仅提交到未合并的fork分支(fork仓库的提交若未合并到原仓库,只会在你自己的fork仓库里统计,需确保提交到自己拥有权限的仓库分支)

二、近几个月提交未显示的排查与修复

1. 验证近期提交的邮箱

用命令查看近3个月的提交邮箱:git log --since="3 months ago" --pretty=format:"%ae",确认是否是账号已验证的邮箱。如果是新添加的邮箱,先在GitHub账号里完成验证。

2. 确认提交分支

GitHub贡献图默认统计仓库的默认分支(通常是main或master)提交,如果你提交到其他分支,需合并到默认分支才会显示。

3. 检查提交时间戳

若本地Git的系统时间错误,提交的时间戳会异常,导致GitHub无法正确统计。运行git log --pretty=format:"%ad"查看提交时间,若和实际时间不符,修改本地系统时间后重新提交(或调整提交时间戳,优先修正系统时间)。

4. 等待缓存刷新

GitHub贡献图存在缓存机制,偶尔会有延迟,提交后等待几个小时再刷新页面,或退出账号重新登录尝试。

内容的提问来源于stack exchange,提问作者nozibul islam

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.07 21:38:31