一个面向 Git / GitHub 初学者的 Git 图形化自动工具。
本工具把常用 Git 命令做成按钮,让用户不用频繁输入命令,也可以完成仓库初始化、提交、推送、拉取、日志查看、版本恢复、.gitignore 生成、GitHub Actions 工作流创建等操作。
项目地址:https://github.com/yanyuhanyue/Git_Tool
本项目支持源码运行,也可以通过 GitHub Actions 自动打包为 Windows EXE 程序,普通用户下载后可直接运行。
Git Tool 是一个基于 Python Tkinter 开发的 Git 图形化工具,主要用于降低 Git 和 GitHub 的使用门槛。
对于刚开始学习 Git 的用户来说,命令行操作容易出现以下问题:
- 不知道第一次上传项目应该执行哪些 Git 命令
- 不清楚
git init、git add、git commit、git push的执行顺序 - 推送 GitHub 时遇到
fetch first、no configured push destination等报错 - 中文文件名在 Git 输出中显示成八进制乱码
- Windows 下经常遇到 LF / CRLF 换行符警告
- 不知道
.gitignore应该怎么写 - 不知道 GitHub Actions 工作流文件应该怎么创建
- 想恢复旧版本文件,但记不住对应命令
Git Tool 5.3.0 将这些常用操作封装为图形化按钮,适合 Git 初学者、学生作业项目、个人项目管理和不熟悉命令行的用户使用。
相比旧版本,5.3.0 主要增强了以下内容:
- 主程序文件名统一为
Git_Tool.py - 新增“一键创建工作流”功能
- 新增“编辑工作流文件”功能
- 内置 GitHub Actions 工作流模板
- 支持 Python CI、Node.js CI、标签发布、Windows EXE 打包、UE5 占位工作流模板
- 新增右上角设置入口
- 支持一键上传中断后继续操作
- 支持设置一键上传中断后的处理策略
- 自动记住上次关闭软件时的精简模式 / 标准模式
- 精简模式支持根据仓库状态动态显示
.gitignore和工作流相关按钮 - 改进隐藏按钮逻辑,用户手动隐藏的按钮不会被自动检测强制显示
- 改进 Git 状态输出的中文提示
- 改进暂存区、未推送提交等一键上传流程判断
支持通过“一键上传到 GitHub”按钮完成常见上传流程:
- 选择本地项目文件夹
- 自动检测是否为 Git 仓库
- 非 Git 仓库可自动初始化
- 自动检测是否配置远程仓库
origin - 可输入 GitHub 仓库地址
- 自动检查 Git 用户名和邮箱
- 选择添加全部文件或部分文件
- 输入提交说明
- 自动提交并推送到 GitHub
适合第一次将本地项目上传到 GitHub,也适合日常更新项目。
5.3.0 增加了一键上传中断后的继续策略。
如果上一次一键上传过程中:
- 已经添加文件,但还没有提交
- 已经提交,但还没有推送
- 暂存区中已有文件
- 本地有尚未推送到 GitHub 的提交
工具可以根据设置决定:
- 从中断的地方继续操作
- 或者每次都从头开始
可以在右上角 设置按钮 中修改该策略。
支持常用仓库操作:
- 初始化仓库
- 克隆远程仓库
- 添加远程
origin - 查看远程仓库
- 修改远程仓库地址
- 查看当前分支
- 查看所有分支
- 创建分支
- 切换分支
- 修改默认分支名称
初始化仓库时默认使用 main 作为默认分支;如果 Git 版本较旧,不支持 git init -b main,工具会尝试兼容方式初始化。
支持常见提交和同步操作:
- 查看状态
- 添加全部文件
- 添加部分文件
- 添加提交说明
- 推送至远程仓库
- 拉取远程更新
- 检查本地与远程同步状态
同步检查可以帮助判断当前仓库状态:
- 本地领先远程
- 本地落后远程
- 本地和远程分叉
- 本地与远程一致
当推送被拒绝并提示需要先拉取时,工具会给出对应提示,降低新手排查难度。
5.3.0 新增 GitHub Actions 工作流管理功能。
支持:
- 一键创建工作流文件
- 编辑已有工作流文件
- 检测仓库是否存在
.github/workflows - 自动切换“创建工作流”和“编辑工作流文件”按钮
- 多个工作流文件时可选择要编辑的文件
内置工作流模板包括:
- Python 持续集成
- Node.js 持续集成
- 标签触发 Release
- Python 打包 Windows EXE
- UE5 占位工作流
工作流模板文件会保存到用户目录,用户可以继续自定义、导入、导出和修改。
如果你希望 GitHub 自动把 Python 文件打包为 Windows EXE,可以使用内置的 Python 打包 Windows EXE 工作流模板。
该模板会在 GitHub Actions 中:
- 拉取仓库代码
- 设置 Python 环境
- 安装 PyInstaller
- 打包 Python 程序
- 上传构建产物
推荐主程序文件固定命名为:
Git_Tool.py
这样以后更新版本时,不需要每次修改工作流里的文件名。
支持 Git 日志和版本相关操作:
- 查看提交日志
- 查看提交 ID
- 切换到指定版本
- 恢复指定文件到旧版本
- 日志中的提交 ID 蓝色显示
- 支持通过 Ctrl + 左键点击提交 ID 进行版本切换操作
适合代码写错后快速回退或恢复文件。
内置多种 .gitignore 模板:
- UE5 / Unreal Engine 5
- Unity
- Python
- Node.js / 前端项目
- C / C++ / Visual Studio
- Java / Maven / Gradle
- Go
- 通用 Web 项目
- 通用模板
支持:
- 自动生成
.gitignore - 打开并修改已有
.gitignore - 添加自定义忽略模板
- 修改已有忽略模板
- 打开模板文件夹
对于 UE5、Unity、Python、前端等项目,建议第一次提交前先生成 .gitignore,避免把缓存、临时文件、构建产物上传到 GitHub。
针对 Windows 用户常见问题,工具提供辅助处理功能:
- 修复中文文件名显示为八进制乱码的问题
- 修复 LF / CRLF 换行符警告
- 自动写入或更新
.gitattributes - 对 warning / error 输出进行高亮提示
- 对常见 Git 报错给出中文说明
如果检测到中文文件名异常或换行符警告,工具会提示是否自动修复。
5.3.0 对部分 Git 状态输出进行了中文提示优化,例如:
- 当前分支
- 已暂存文件
- 未暂存文件
- 未跟踪文件
- 没有需要提交的内容
- 当前分支还没有提交记录
这样可以减少新手阅读 Git 英文输出时的理解成本。
工具支持精简模式和标准模式。
精简模式主要保留常用按钮,例如:
- 生成 / 修改忽略文件
- 一键上传到 GitHub
- 查看状态
- 查看日志
- 切换到指定版本
- 恢复指定文件到旧版本
- 切回指定分支
- 清空输出
如果当前仓库已经存在工作流文件,精简模式会自动显示“编辑工作流文件”。
5.3.0 会自动记住上次关闭软件时使用的是精简模式还是标准模式,下次启动时自动恢复。
支持自定义界面按钮:
- 拖拽按钮排序
- 隐藏不常用按钮
- 显示隐藏按钮
- 设置每行按钮数量
- 添加自定义按钮
- 导入 / 导出自定义按钮
- 导入 / 导出布局文件
- 重置布局
- 编辑内置按钮显示名称
自定义按钮可以保存常用 Git 命令,例如:
status -sb
log --oneline -n 5
branch -a添加后可以像普通按钮一样点击执行。
如果你下载的是已经打包好的 EXE 文件,只需要:
- Windows 10 / Windows 11
- 已安装 Git
- 可以访问 GitHub
直接双击 EXE 文件即可运行。
注意:本工具是 Git 图形化辅助工具,不内置 Git。
如果电脑没有安装 Git,需要先安装 Git for Windows。
如果你想运行 Python 源码,需要:
- Python 3.x
- Git
- Windows 系统推荐使用
运行命令:
python Git_Tool.py程序主要使用 Python 自带的 tkinter 图形界面库,不需要复杂依赖。
- 打开项目仓库:https://github.com/yanyuhanyue/Git_Tool
- 进入
Releases - 下载最新版本的 EXE 文件
- 双击运行
- 选择你的项目文件夹
- 点击对应按钮完成 Git 操作
git clone https://github.com/yanyuhanyue/Git_Tool.git
cd Git_Tool
python Git_Tool.py- 在 GitHub 新建一个空仓库
- 打开 Git Tool
- 点击“选择仓库”,选择本地项目文件夹
- 如有需要,先点击“生成忽略文件”
- 点击“一键上传到 GitHub”
- 如果当前文件夹不是 Git 仓库,选择自动初始化
- 输入 GitHub 仓库地址,例如:
https://github.com/用户名/仓库名.git- 选择添加全部文件或部分文件
- 输入提交说明
- 等待推送完成
- 打开 Git Tool
- 选择项目仓库
- 点击“查看状态”
- 点击“一键上传到 GitHub”
- 输入本次修改说明
- 推送到 GitHub
- 选择当前 GitHub 仓库目录
- 点击“显示隐藏”
- 显示“一键创建工作流”
- 点击“一键创建工作流”
- 选择“Python 打包 Windows EXE”
- 创建工作流文件
- 提交并推送到 GitHub
- 使用版本标签触发自动打包
推荐版本标签格式:
git tag v5.3.0
git push origin v5.3.0如果你在 GitHub 网页端修改过文件,或者远程仓库有其他提交,建议先点击:
拉取
同步完成后,再继续提交和推送。
- 点击“查看日志”
- 找到需要恢复到的提交 ID
- 点击“恢复指定文件到旧版本”
- 输入提交 ID 和文件路径
- 恢复后重新提交
说明当前电脑没有正确安装 Git,或者 Git 没有加入系统环境变量。
解决方法:
- 安装 Git for Windows
- 安装完成后重新打开 Git Tool
- 如果仍然提示找不到 Git,重启电脑后再试
工具也提供了通过 Windows winget 尝试自动安装 Git 的辅助功能。
说明 GitHub 远程仓库中存在本地没有的提交。
常见解决方法:
- 先点击“拉取”
- 同步远程内容
- 再重新提交和推送
这是 Git 在 Windows 下的中文路径显示问题。
可以点击工具中的:
修复中文显示
修复后中文文件名会更容易阅读。
通常不是严重错误,而是 Windows 下的换行符提示。
如果不想反复看到该提示,可以使用工具中的:
修复换行符警告
工具会写入或更新 .gitattributes,并让换行符规则更加稳定。
.gitignore 用来告诉 Git 哪些文件不需要上传。
例如以下内容通常不建议上传:
- 编译缓存
- 临时文件
- IDE 配置缓存
- 日志文件
- 打包输出目录
- Python 的
__pycache__ - UE5 的
Binaries、Intermediate、Saved - Unity 的
Library、Temp
可以。
如果当前仓库已经存在 .gitignore,工具会显示“修改忽略文件”按钮,可以直接打开并编辑。
因为如果文件名带版本号,例如:
Git_Tool_5.1.4.py
Git_Tool_5.3.0.py
每次更新版本都要同步修改 GitHub Actions 工作流里的打包命令。
固定使用:
Git_Tool.py
以后版本号交给 Git 标签管理,例如:
git tag v5.3.0
git push origin v5.3.0这样更适合自动打包和长期维护。
GitHub Actions 工作流文件保存在仓库的:
.github/workflows/
例如:
.github/workflows/build-exe.yml
- Git / GitHub 初学者
- 不熟悉命令行的用户
- 需要经常提交课程作业的学生
- 使用 UE5、Unity、Python、前端项目的个人开发者
- 想用按钮完成 Git 常用操作的用户
- 想让 GitHub 自动打包 EXE 的 Python 项目作者
推荐项目结构:
Git_Tool/
├─ Git_Tool.py
├─ README.md
├─ LICENSE
├─ .gitattributes
└─ .github/
└─ workflows/
└─ build-exe.yml
- 使用前请先安装 Git。
- 第一次推送 GitHub 时,可能需要登录 GitHub 或配置凭据。
- 恢复旧版本前建议先提交当前修改,避免误覆盖。
.gitignore建议在第一次大量提交前生成。- 如果远程仓库已有内容,推送前建议先拉取。
- EXE 文件如果被安全软件拦截,可将其加入信任列表,或运行源码版本。
- GitHub Actions 自动打包建议使用固定文件名
Git_Tool.py。 - 工作流文件修改后,需要提交并推送到 GitHub 才会生效。
本项目采用 MIT License 开源协议。
你可以自由使用、复制、修改、合并、发布、分发本项目代码,但需要保留原始版权声明和许可证声明。