在日常开发中,我通常使用 VS Code 左侧的「源代码管理(Source Control)」面板来提交代码。自从 GitHub Copilot 支持一键生成 Commit Message 之后,确实大幅减少了手写提交信息的时间。

但有一个非常明显的问题:

无论你的项目语言、注释语言、VS Code 界面语言是什么,Copilot 默认生成的 Commit Message 永远是英文。​

如果你更习惯中文提交记录,或者团队内部统一使用中文 Commit,那么这个默认行为就显得有些别扭。好在,这个问题是可以通过配置彻底解决的。

Copilot 为什么默认生成英文 Commit

Copilot 在生成 Commit Message 时,本质上是:

  1. 读取当前 Git Diff(代码变更)
  2. 使用一段内置的系统提示词
  3. 根据提示词生成总结性的提交描述

而这段默认提示词是英文,所以输出语言始终是英文。即使你已经把 VS Code 切换为中文界面,也不会影响这一行为。

解决方式只有一个:主动给 Copilot 增加一条“强制使用中文”的指令。​

配置 VS Code 让 Commit 自动生成中文

第一步:打开 Commit Message 配置项

  1. 打开 VS Code 设置

    • Windows / Linux:Ctrl + ,
    • macOS:Cmd + ,
  2. 在设置搜索框中输入:Commit Message Generation

  3. 找到以下配置项: Github › Copilot › Chat › Commit Message Generation: Instructions

点击「在 settings.json 中编辑」。

第二步:添加中文 Commit 指令

settings.json 中加入以下内容(如果已有该字段,直接覆盖即可):

"github.copilot.chat.commitMessageGeneration.instructions": [
  {
    "text": "请始终使用中文来编写 commit message。并且严格遵循 Conventional Commits 规范,格式为:<type>(<scope>): <subject>。type 必须是:feat, fix, docs, style, refactor, perf, test, build, ci, chore, revert 之一。subject 简洁明了。"
  }
]

保存后 无需重启 VS Code,配置会立刻生效。

配置完成后的实际效果

完成上述配置后,当你在 Source Control 面板中:

  1. 暂存(Stage)文件
  2. 点击输入框右侧的 ✨「生成 Commit Message」按钮

Copilot 会自动生成类似下面这样的提交信息:

feat(login): 新增用户登录失败提示逻辑

特点非常明确:

  • 使用中文描述变更内容
  • 严格符合 Conventional Commits 规范
  • 提交历史清晰、可读性高

使用建议

  • Copilot 生成的 Commit Message 依然需要人工确认,遇到复杂逻辑建议稍作润色再提交。
  • 如果你的团队强制使用英文 Commit,不建议开启该配置。

Commit Message 的真正价值,是让未来的自己和同事能快速理解这次改动做了什么,语言统一和语义清晰远比“看起来专业”更重要。