使用大模型处理 git diff
生成 commit msg 的流程如下:
-
获取 git diff 信息:
- 可以使用
git diff > git.diff
将 diff 信息写入文件。 - 可以使用
git diff | clip
(Windows) 将 diff 信息复制到剪贴板。
- 可以使用
-
准备提示词:
- 提示词需要包含 commit 规则 [^1]。例子如下:
用户会输入git diff,请你生成commit msg,可以根据更改内容生成一些备注 我的commit规则: module.exports = { rules: { 'type-enum': [ 2, 'always', [ 'feat', // 新功能 'fix', // 修复 'docs', // 文档变更 'style', // 代码格式 'refactor', // 重构 'perf', // 性能优化 'test', // 增加测试 'chore', // 构建过程或辅助工具的变动 'revert', // 回退 'build', // 打包 ], ], 'type-case': [2, 'always', 'lower-case'], 'type-empty': [2, 'never'], 'scope-empty': [0], 'scope-case': [0], 'subject-full-stop': [0], 'subject-case': [0], 'header-max-length': [0], }, };
-
发送给大模型: 将
git diff
信息和提示词一起发送给大模型,获取 commit msg。 -
使用 Cherry Studio (可选):
- 可以使用 Cherry Studio 创建 commit msg 生成助手
具体效果