🚀 用 gix 让 Git 合并提交更丝滑!我做了一个高颜值的 CLI 工具
这是我为自己造的一个轮子,也可能是你每天都能用到的工具。
✨ 起因:重复的 Git 操作,让人烦躁
作为一名前端开发者,每天都要和 Git 打交道,尤其是整理提交记录、合并提交、强推远程这些动作,说起来轻松,但做起来却是重复又容易出错。
比如下面这段你一定不陌生:
git reset --soft HEAD~3
git commit -m "feat: 优化组件加载逻辑"
git push --force-with-lease
你是不是也想说:
✋ 我不想每次都手打这些命令了!
💡 我做了个工具:gix
gix 是一个 Git 扩展 CLI 工具,帮你把「合并多个提交 + 提交 + 强推」这个动作封装为一句话。
📦 项目地址:github.com/nianyi778/g…
🌍 支持中文文档:github.com/nianyi778/g…
📥 npm 安装:www.npmjs.com/package/gix
🧩 主要特性
- ✅ 交互式选择起始提交、填写 commit message
- ✅ 自动构建
git reset --soft + commit + push - ✅ 强推前提示确认,避免误操作
- ✅ 内置
gix squash、gix doctor等扩展命令 - ✅ 基于 TypeScript 编写,类型安全,支持 monorepo 管理
🔧 安装方式
npm install -g gix-cli
然后直接使用:
gix merge
你会看到一个简洁的交互式界面,帮你完成:
- 起始 commit 输入
- 新的提交信息
- 是否要强推远程
🧪 使用示例
gix merge -f a1b2c3d -m "feat: 合并订单功能相关提交"
等价于:
git reset --soft a1b2c3d^
git commit -m "feat: 合并订单功能相关提交"
git push --force-with-lease
是不是一口气顺了很多?🤗
🛠 其他命令一览
gix squash -n 3 # squash 最近 3 次提交
gix squash --all # 从 root 提交开始 squash
gix doctor # 检查当前 Git 仓库状态、分支、远程等
🎯 为什么我推荐你用它
- 👉 团队协作前的 commit 整理,效率翻倍
- 👉 再也不用反复查 git reset、push 强推语法
- 👉 简单可扩展,未来可支持 commit lint、changelog 等功能
- 👉 支持中英文文档,CLI 支持 i18n(计划中)
🛣️ 未来计划
- merge 合并提交
- squash 交互式 squash
- doctor 检查工作状态
- undo 撤销合并操作
- config CLI 个性化配置
- log 输出合并历史日志
📸 项目截图
(示意图可放你前面生成的封面图)
❤️ 如果你也喜欢这个工具
欢迎来 GitHub 点个 ⭐️ 支持一下:
也欢迎留言或提 issue,一起打造一个好用 + 好看 + 可扩展的 Git 命令行工具!
📮 最后
开发这个工具的初衷是为了解决我自己工作中的“重复性烦躁”,如果你也遇到类似的 Git 场景,希望 gix 能成为你的得力小助手。
记住这句 slogan:
让 Git 更简单一点,就是我们开发者更快乐一点!