gitX 是一个 VS Code 扩展,用来把当前工作区中的 Git 变更文件按业务含义分组,并按分组执行暂存、提交和推送。
它适合这样的场景:同一个分支里同时改了几类内容,你不想一次性全部提交,而是希望按“功能块”拆分提交历史。
功能特性
- 在
File Groups视图中创建命名分组。 - 通过拖拽或右键把变更文件移动到指定分组。
- 支持单文件暂存,也支持整组暂存。
- 只提交当前分组内的文件,不会把其他分组一起带上。
- 支持一键执行:
暂存暂存并提交暂存并提交并推送
- 在
gitX侧边栏内使用Commit Panel输入提交说明,不再弹出居中输入框。 - 在 VS Code 内查看最近 7/30/90 天的 Git 提交统计。
视图结构
扩展会在活动栏增加一个独立的 gitX 入口,包含 3 个视图:
Branch GroupsFile GroupsCommit Panel
典型使用流程
- 打开一个 Git 工作区,并确保当前有变更文件。
- 在
File Groups中创建一个或多个分组。 - 通过拖拽或右键
Move to Group把文件放进目标分组。 - 右键分组,执行以下任一动作:
StageStage and CommitStage, Commit and Push
- 在
Commit Panel中输入提交说明并确认。
可用命令
gitx.addGroupgitx.refreshgitx.refreshGroupTreegitx.showStatisticsgitGroupManager.moveToGroupgitGroupManager.stageFilegitGroupManager.unstageFilegitGroupManager.stageGroupgitGroupManager.commitGroupgitGroupManager.pushGroup
行为说明
- 分组数据保存在当前工作区的
workspaceState中。 - 分组提交和分组推送只会处理该分组下的文件。
- 当文件在提交或推送后不再出现在
git status中时,会自动从分组内移除。
开发
npm install
npm run compile
在 VS Code 中按 F5 可启动 Extension Development Host 进行调试。
打包与发布
发布到 VS Code Marketplace 前,请先在 package.json 中补上真实的 publisher。