git_matrix是一款可以通过生成具有特定提交历史的仓库,从而在GitHub 贡献图上“作画”的开源工具集,(即个人主页上显示每日提交活跃度的方格日历图上“作画”)。它通过自动化生成一个具有特定提交历史的 Git 仓库来实现这一创意效果。

项目包含两个相互协作的主要组件,确保从设计到实现的完整流程:

  1. 可视化设计器 (index.html):
    • 提供一个直观的 7×53 网格界面,精确对应 GitHub 贡献图的布局(每周7天,约53周)。
    • 文本转像素画: 内置 5×7 字体,输入文本即可自动在网格上生成对应的像素图案。
    • 手动绘制: 支持通过鼠标点击和拖拽,直接在网格上自由绘制或微调设计。
    • 年份选择: 允许用户选择特定的目标年份进行创作,非目标年份的网格单元会被禁用。
    • 零依赖: 纯 HTML/JS 实现,完全离线运行,无需网络连接。
  2. 仓库生成器 (repo_generator.py ):
    • 读取设计器生成的配置,在本地创建一个新的 Git 仓库。
    • 根据配置精确伪造提交历史,使得这些提交能按计划出现在 GitHub 贡献图的特定日期格子上。
    • 最小依赖: 仅需标准 Python 环境和系统已安装的 Git 命令行工具即可运行。

功能特性

  • 创意独特: 将技术(Git 提交)转化为艺术表达,个性化你的 GitHub 主页。
  • 精准控制: 7×53 网格精确匹配 GitHub 界面,确保设计效果如实呈现。
  • 易于上手: 可视化设计器界面友好,支持文本快速生成和手动绘制。
  • 流程清晰: 设计 -> 生成配置 -> 创建本地仓库 -> 推送,步骤明确。
  • 轻量低依赖:
    • 设计器:纯前端,离线可用。
    • 生成器:仅需 Python 和 Git(通常开发者环境已具备)。

工作原理与使用流程

  1. 设计阶段 (使用 index.ht ml):
    • 在浏览器中打开 index.ht ml
    • 从下拉菜单中选择目标年份
    • (可选) 在输入框输入文本,快速生成基础像素图案。
    • 使用调色板选择贡献等级(颜色),通过点击/拖拽鼠标在网格上进行自由创作或修改。
    • 填写仓库名称、你的Git 用户名和 Git 邮箱
    • 点击 “生成 pattern.json 配置文件” 按钮,浏览器将下载配置文件 pattern.json
  2. 生成仓库阶段 (使用 repo_generator.py ):
    • 将下载的 pattern.json 文件与 repo_generator.py  脚本放在同一目录
    • 打开终端/命令行,进入该目录。
    • 运行命令:python repo_generator.py
    • 脚本会根据 pattern.json 创建新文件夹(即本地仓库),并在其中生成伪造的提交历史。
  3. 上传到 GitHub 阶段:
    • 在 GitHub 网站上创建一个新的空仓库关键点: 不初始化 README, .gitignore 或 License)。
    • 根据脚本在终端中打印出的详细指引进行操作:
      • 进入生成的本地仓库目录:cd 你的仓库名称
      • 关联远程 GitHub 仓库:git remote add origin <你的远程仓库URL>
      • (可选,若默认分支非main) 重命名分支:git branch -M main
      • 推送提交历史:git push -u origin main
  4. 效果呈现:
    • 稍等片刻(GitHub 需要时间处理),你的个性化贡献图艺术就会神奇地出现在你的 GitHub 个人主页上!

源代码:https://github.com/Mechmallow/git_matrix