用途:帮助为项目撰写符合提交风格规范的 Git 提交信息,当用户要求写或起草提交信息时激活。
格式:首行为“<subsystem>: <summary>”,其后可选参考问题/PR 编号(各自单独一行,与首行空行分隔,如 #1234;无参考则整节省略),再后为长描述。
规则:子系统前缀取简短小写标识,依据 diff 文件路径判断,如 terminal、vt、lib、config、font;涉及 macOS 应用用 macos,GTK 用 gtk,构建系统用 build,必要时可用斜杠嵌套如 terminal/osc。摘要小写开头、祈使语气、无句末句号,整个主题行尽量 60 字符内。长描述说明改了什么、此前行为与新的高层行为,用平实散文而非项目符号,行宽约 72 字符,重 why 与 how 而非复述 diff,语气直接技术化、无填充语,不超过几段。
工作流:若存在 .jj 则所有命令用 jj 而非 git;先运行 diff 查看自上次提交以来的改动;从改动文件路径识别子系统;从 diff 上下文或分支名识别引用的 issue/PR;按上述格式起草提交信息;应用提交。不要推送提交,留给用户自行处理。