你的 GitHub Graph 在工作量统计上撒谎——我如何修复了它

发布: (2026年2月7日 GMT+8 05:49)
4 min read
原文: Dev.to

Source: Dev.to

概览

我每周写代码超过 50 小时,但我的 GitHub 个人资料几乎没有任何活动。
如果你大部分时间都在私有仓库(GitHub Enterprise、Bitbucket、GitLab、自托管等)中工作,这些工作都不会出现在你的贡献图上,导致招聘人员看到的个人资料几乎是空白的。

contrib‑mirror 是一个 CLI 工具,它会将你真实的提交时间戳镜像到一个公共仓库,而不暴露任何源代码。它会创建带有原始日期的空提交,从而让你的实际工作活动在 GitHub 的贡献图上可见。

工作原理

  1. 发现 工作目录中的仓库。
  2. 创建 裸缓存(不触及源代码)。
  3. 提取 与你的邮箱匹配的提交时间戳。
  4. 可选 通过 GitHub API 拉取 PR、审查和议题的时间戳。
  5. 公共镜像仓库中 创建 带有匹配日期的空提交。
  6. 推送 镜像到 GitHub。

永不暴露代码。 镜像中仅包含带时间戳的空提交。GitHub 统计的不仅仅是提交——打开的 PR、提交的审查以及创建的议题也会计入你的图表。当 gh CLI 已认证时,contrib‑mirror 也会抓取这些信息。

添加 cron 任务或 launchd 代理,它会在每天午夜自动同步,使你的图表保持绿色。设置向导也可以为你安排同步。

/ 
        private-work-contributions-mirror
      
    
Private Work Contributions Mirror
Mirror commit timestamps from private work repos to your GitHub contribution graph—without exposing any code.
Before                              After
┌────────────────────────┐          ┌────────────────────────┐
│ ░░░░░░░░░░░░░░░░░░░░░░ │          │ ░█░██░█░░█░██░█░░█░██░ │
│ ░░░░░░░░░░░░░░░░░░░░░░ │    →     │ ░█░██░█░░█░██░█░░█░██░ │
│ ░░░░░░░░░░░░░░░░░░░░░░ │          │ ░█░██░█░░█░██░█░░█░██░ │
└────────────────────────┘          └────────────────────────┘
  Private work invisible              Real activity visible

安装

一行命令(推荐)

curl -fsSL https://raw.githubusercontent.com/yuvrajangadsingh/private-work-contributions-mirror/main/install.sh | bash

Homebrew

brew tap yuvrajangadsingh/contrib-mirror
brew install contrib-mirror

手动

git clone https://github.com/yuvrajangadsingh/private-work-contributions-mirror.git
cd private-work-contributions-mirror
bash setup.sh

安装程序会运行交互式设置向导,自动检测你的仓库、电子邮件地址和 GitHub 组织。

使用方法

contrib-mirror            # 立即同步
contrib-mirror --setup    # 再次运行配置向导
contrib-mirror --help     # 显示帮助
contrib-mirror --version  # 显示版本

你可以使用 cronlaunchd 来安排同步(向导会提供设置帮助)。

前置条件

要求原因检查方式
Git克隆仓库、创建提交git --version
Bash运行脚本bash --version
访问私有仓库获取提交(SSH 或 HTTPS)在任意工作仓库中运行 git remote -v
GitHub CLI(可选)跟踪 PR、审查、议题gh --version

兼容平台…

  • GitHub(包括 GitHub Enterprise)
  • Bitbucket
  • GitLab
  • 自托管 Git 服务器

如果你觉得项目有用,请在 GitHub 上给它点个星。

Back to Blog

相关文章

阅读更多 »