Git XL 开发者指南:如何从源码构建 Windows 版 Git diff 扩展

发布时间:2026/10/17 5:53:48
Git XL 开发者指南:如何从源码构建 Windows 版 Git diff 扩展 Git XL 开发者指南如何从源码构建 Windows 版 Git diff 扩展【免费下载链接】git-xlGit extension: Makes git-diff work for VBA in Excel workbooks (xls* file types)项目地址: https://gitcode.com/gh_mirrors/gi/git-xlGit XL 是一款开源的 Git 命令行扩展让git diff能够直接对比 Excel 工作簿中的 VBA 代码。本文是一份完整的开发者指南手把手教你在 Windows 上从源码构建 Git XL 可执行文件并打包成标准安装程序全程无需安装 Excel。 先认识 Git XLExcel 专属的 Git diff 扩展平时对 Excel 文件执行git diffGit 只能把它当作二进制文件输出一句二进制文件不同。Git XL 通过注册一个自定义 diff 驱动直接解析工作簿内部的 VBA 模块让对比效果与普通源码文件一样清晰C:\Developergit diff dev..master diff --xl a/Book1.xlsb b/Book1.xlsb --- a/Book1.xlsb/VBA/Module/Module1 b/Book1.xlsb/VBA/Module/Module1 -1,4 1,4 Option Explicit Public Function Version() As String - Version v1.0 Version v1.1 End Function它支持xls、xlt、xla、xlam、xlsx、xlsm、xlsb、xltx、xltm全部常见格式见 src/cli.py 中的FILE_EXTENSIONS定义并使用 Python oletools 直接解析 OLE 文件因此不依赖 Excel 环境。两个核心模块分别是src/diff.py自定义 diff 程序提取并对比 VBA 模块内容src/cli.pygit xl子命令入口负责安装、卸载与环境检查️ 第一步准备 Windows 构建环境开始前请确认系统已安装Git2.8 以上版本Python建议 3.8强烈推荐使用虚拟环境隔离依赖在项目根目录执行python -m venv venv venv\Scripts\activate pip install -r requirements.txtrequirements.txt 中只锁定 3 个依赖非常轻量依赖作用colorama为 diff 输出着色红删绿增oletools解析 OLE 文件并提取 VBA 宏代码pyinstaller将 Python 脚本打包为独立 exe 第二步克隆 Git XL 仓库git clone https://gitcode.com/gh_mirrors/gi/git-xl cd git-xl⚡ 第三步一键构建 Windows 可执行文件按照 BUILDING.md 的说明在仓库根目录下执行构建脚本.\scripts\windows\build.bat该脚本基于 PyInstaller 完成打包最终在仓库根目录生成两个文件git-xl.exe命令行主程序提供install / uninstall / env / version等子命令对应src/cli.pygit-xl-diff.exeGit 实际调用的 Excel 差异对比驱动对应src/diff.py 构建产物为 64 位二进制文件git-xl-x64.exe、git-xl-diff-x64.exe可直接分发给 Windows 用户对方无需安装 Python。✅ 第四步安装并验证构建结果将 exe 所在目录加入PATH后执行全局安装git xl install安装时 Git XL 会自动完成三件事逻辑见src/cli.py中的Installer.install在 gitconfig 中写入diff.xl.command指向git-xl-diff.exe为所有 Excel 扩展名设置*.xlsx diffxl等.gitattributes规则通过.gitignore让 Git 忽略~$开头的 Excel 临时文件如果只想对单个仓库生效可使用git xl install --local。验证是否成功git xl env正常应输出版本号、本地工作目录、.gitattributes与.gitignore路径。随后在一个包含 VBA 代码的 Excel 文件中修改一行代码并git diff若能看到类似开头的diff --xl彩色输出说明构建的 diff 扩展工作正常。 第五步可选打包 Windows 安装程序如果你想生成带安装向导的.exe安装包可以使用 Inno Setup打开scripts/windows/inno-setup-git-xl-installer.iss脚本它会检查两个 exe 是否已构建自动读取版本信息并把安装目录写入系统PATH安装向导的图标与图片资源位于git-xl-logo.ico、git-xl-logo.bmp发布版本前可运行scripts/windows/update-version-info.py从 CI 环境变量读取版本号与提交哈希自动生成git-xl-version-info.py中的文件版本信息并同步更新src/cli.py里的VERSION与GIT_COMMIT常量。❓ 常见问题速查构建报错缺少依赖确认已激活虚拟环境并执行过pip install -r requirements.txt注意 pyinstaller 与 Python 版本的兼容性构建后git diff仍显示二进制检查git xl env输出的路径是否正确必要时重新执行git xl install --local想跑一下测试仓库内置测试位于src/tests/并附带样例工作簿src/tests/Book1.xlsb可直接用 Python 的 unittest 框架运行从克隆仓库到产出可分发的 Windows 安装包整个流程不超过 10 分钟。现在就动手构建你自己的 Git XL 吧【免费下载链接】git-xlGit extension: Makes git-diff work for VBA in Excel workbooks (xls* file types)项目地址: https://gitcode.com/gh_mirrors/gi/git-xl创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

关于本文作者

来自尧图内容编辑团队

尧图内容编辑团队 内容团队

尧图内容编辑团队

本文由尧图网络内容编辑团队执笔。团队由资深项目经理、前端工程师与设计师组成,所有内容均来自亲手交付的真实项目,先讲清问题、再给出可落地的解法。尧图深耕北京网站建设十年,服务过京华建材集团、智造科技等各行业客户,把一线经验沉淀为可复用的行业观察。

  • 十年建站经验,覆盖建材、制造、服务、文创等
  • 项目经理把关选题与事实准确性
  • 工程师与设计师联合撰写专业细节
  • 统一编辑规范,保证文风与排版一致
  • 每月复盘转化数据,迭代选题方向

延伸阅读

相关资讯与近期热门内容

深度阅读推荐

建站决策前值得细读的三篇

网站改版的5个关键决策
2024-08-12

网站改版的5个关键决策

什么时候该改版、改到什么程度、如何避免流量掉光,京华建材集团改版复盘给出答案。

获取专属建站方案

看完文章,把您的行业与预算告诉我们,免费获取一份量身定制的官网建设方案与报价。

立即免费咨询