forked from NUDT-compiler/nudt-compiler-cpp
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
2.6 KiB
2.6 KiB
| name | description |
|---|---|
| git-submit | 执行 Git 提交和推送工作流 |
Git 提交/推送工作流(Codex CLI)
当用户明确要求提交/推送时使用。
操作流程
1)检查当前状态(不需要用户确认)
- 查看分支/干净程度:
git status -sb - 查看变更概要:
git diff --stat
如发现明显问题,优先在提交前处理:
- 误把生成物/大文件加入:先移除或补
.gitignore - 变更跨度过大:提醒用户是否需要拆分提交
2)起草提交信息(中文;默认不需要用户确认)
根据对话历史和修改的文件信息,按下方规范直接生成提交信息并继续执行后续流程。
- 如果用户已经明确给出提交信息,直接使用用户提供的版本
- 如果用户没有指定提交信息,按下方规范自动生成最合适的一条
- 不要为了 commit message 再额外等待用户确认,除非用户明确要求先看 message 再提交
Git Commit Message 规范
1)格式
<type>(<scope>): <subject>
说明:
<type>:提交类型(必填)<scope>:影响范围/模块(必填)<subject>:一句话说明“做了什么”(必填)
2)type 列表
统一使用小写:
| type | 含义 |
|---|---|
feat |
新功能 |
fix |
修复 bug |
docs |
文档变更 |
style |
仅格式/风格(不改语义) |
refactor |
重构(不改变外部行为) |
perf |
性能优化 |
test |
测试相关 |
build |
构建系统 |
ci |
CI 相关 |
chore |
杂项维护 |
revert |
回滚提交 |
3)scope 列表
建议从以下范围中选择(保持一致即可):
| scope | 含义 |
|---|---|
frontend |
前端(ANTLR 驱动、AST 构建入口等) |
ast |
AST 相关 |
sema |
语义分析(符号表、常量求值等) |
ir |
IR 核心结构 |
irgen |
AST → IR 生成 |
mir |
Machine IR(指令选择、寄存器分配、栈帧等) |
backend |
后端目标相关(如需要可细化 aarch64) |
antlr |
语法文件/ANTLR 相关 |
build |
构建配置 |
test |
测试 |
doc |
文档 |
misc |
其他无法归类但需要说明的范围 |
提交信息示例:
refactor(irgen): 简化 AST → IR 构建流程
3)后续流程(均不需要用户确认)
- 暂存所有改动:
git add -A - 单行摘要:
git commit -m "<type>(<scope>): <subject>",需要补充说明时用多行:git commit -m "<summary>" -m "<detail 1>" -m "<detail 2>" - 推送:
git push,推送完成后立即停止,不要再运行其他命令