cursor AI自动生成git commit 内容,返回结果总是英文解决方案

254 阅读4分钟

image.png

Cursor IDE 配置指南

目录


问题背景

问题 1:Commit Message 生成总是英文

在使用 Cursor IDE 的 AI 功能生成 commit message 时(点击 ✨ 图标),返回的结果总是英文,需要中文的 commit message。

问题 2:多项目共享配置

需要在多个项目中共享相同的 Cursor 配置规则,避免在每个项目中重复配置。


解决方案概览

本方案通过 setup_cursorrules_complete.sh 脚本一键解决所有问题:

  1. 创建共享配置文件:在用户主目录创建统一的 .cursorrules 配置文件
  2. 使用符号链接:在各个项目中创建符号链接指向共享配置文件
  3. 自动添加到 Git 忽略:自动将 .cursorrules 添加到项目的 .gitignore 文件中
  4. 一键完成配置:运行脚本即可完成所有设置,无需手动操作

详细实施方案

一键配置脚本:setup_cursorrules_complete.sh

脚本位置~/.cursor-shared/setup_cursorrules_complete.sh

功能说明: 该脚本会自动完成以下所有操作:

  1. ✅ 创建 .cursorrules 符号链接,指向共享配置文件 ~/.cursor-shared/.cursorrules
  2. ✅ 自动将 .cursorrules 添加到项目的 .gitignore 文件中(如果是 Git 仓库)
  3. ✅ 备份已存在的 .cursorrules 配置文件(如果存在)

使用方法

# 进入项目目录
cd /path/to/your/project

# 运行脚本
~/.cursor-shared/setup_cursorrules_complete.sh

共享配置文件内容: 脚本会使用 ~/.cursor-shared/.cursorrules 作为共享配置,内容包含:

  • 始终使用中文进行沟通和生成内容
  • Commit message 使用中文
  • 代码注释使用中文
  • 其他 AI 功能默认使用中文

优点

  • 🚀 一键完成:运行一个命令即可完成所有配置
  • 📦 统一管理:所有项目共享同一份配置,修改一处全局生效
  • 🔄 自动同步:更新共享配置文件后,所有项目自动使用新配置
  • 🛡️ 自动忽略:自动添加到 .gitignore,避免误提交配置文件

使用说明

方法 1:使用 Cursor IDE 任务(推荐)

最简单的方式:在 Cursor IDE 中一键运行配置任务。

使用步骤
  1. 打开命令面板

    • Cmd + Shift + P(macOS)或 Ctrl + Shift + P(Windows/Linux)
  2. 运行任务

    • 输入 "Tasks: Run Task"
    • 选择 "配置 Cursor Rules"
  3. 查看执行结果

    • 任务会在终端面板中执行
    • 显示配置过程的详细输出
  4. 重启 Cursor IDE(让配置生效)

  5. 验证配置

    • 在源代码管理面板中点击 ✨ 图标生成 commit message
    • 应该会生成中文的 commit message
任务配置说明

如果项目中没有 .vscode/tasks.json 文件,可以手动创建,添加以下内容:

{
    "version": "2.0.0",
    "tasks": [
        {
            "label": "配置 Cursor Rules",
            "type": "shell",
            "command": "~/.cursor-shared/setup_cursorrules_complete.sh",
            "problemMatcher": [],
            "presentation": {
                "reveal": "always",
                "panel": "shared"
            },
            "options": {
                "cwd": "${workspaceFolder}"
            }
        }
    ]
}

优点

  • ✅ 无需打开终端
  • ✅ 一键执行,操作简单
  • ✅ 在 IDE 内直接查看执行结果

方法 2:命令行执行

快速开始

在任何项目中,只需运行一个命令即可完成配置:

cd /path/to/your/project
~/.cursor-shared/setup_cursorrules_complete.sh
使用步骤
  1. 进入项目目录

    cd /path/to/your/project
    
  2. 运行配置脚本

    ~/.cursor-shared/setup_cursorrules_complete.sh
    
  3. 重启 Cursor IDE(让配置生效)

  4. 验证配置

    • 在源代码管理面板中点击 ✨ 图标生成 commit message
    • 应该会生成中文的 commit message

更新共享配置

编辑共享配置文件后,所有项目会自动生效:

# 编辑共享配置文件
vim ~/.cursor-shared/.cursorrules
# 或使用编辑器
code ~/.cursor-shared/.cursorrules

修改后,所有通过符号链接使用该配置的项目会自动生效,无需重启

检查配置状态

检查符号链接是否正确创建

ls -la .cursorrules
# 应该显示:.cursorrules -> /Users/your_username/.cursor-shared/.cursorrules

检查是否已添加到 .gitignore

grep -q "^\.cursorrules$" .gitignore && echo "✓ 已添加到 .gitignore" || echo "✗ 未添加到 .gitignore"

文件结构

~/.cursor-shared/
├── .cursorrules                    # 共享的 Cursor 规则配置文件
└── setup_cursorrules_complete.sh   # 一键配置脚本

项目根目录/
├── .vscode/
│   └── tasks.json                  # Cursor IDE 任务配置(可选,推荐)
├── .cursorrules -> ~/.cursor-shared/.cursorrules  # 符号链接(脚本自动创建)
└── .gitignore                      # 自动添加 .cursorrules 规则(脚本自动添加)

常见问题

Q1: 配置后 commit message 仍然是英文?

可能原因

  1. Cursor IDE 未重启
  2. .cursorrules 文件路径不正确
  3. Cursor 版本不支持该功能

解决方法

  1. 重启 Cursor IDE
  2. 验证 .cursorrules 文件是否存在且是符号链接:
    ls -la .cursorrules
    
  3. 手动在 commit message 输入框中添加提示:"请用中文生成 commit message",然后再点击 ✨

Q2: 符号链接创建失败?

可能原因

  1. 共享配置文件不存在
  2. 权限问题

解决方法

# 检查共享文件是否存在
ls -la ~/.cursor-shared/.cursorrules

# 手动创建符号链接
ln -sf ~/.cursor-shared/.cursorrules .cursorrules

Q3: .cursorrules 已被 Git 追踪怎么办?

如果 .cursorrules 文件已被 Git 追踪,脚本会自动处理。如果仍有问题,可以手动移除:

git rm --cached .cursorrules
# 然后重新运行脚本
~/.cursor-shared/setup_cursorrules_complete.sh

Q4: 如何在特定项目中使用不同的配置?

如果需要某个项目使用不同的配置,可以:

  1. 删除符号链接:rm .cursorrules
  2. 创建项目本地的 .cursorrules 文件
  3. 本地文件会覆盖共享配置

技术要点总结

核心思想

  • 配置集中化:统一管理所有项目的 Cursor 配置
  • 一键自动化:通过脚本一键完成所有配置操作
  • 版本控制友好:自动添加到 .gitignore,避免误提交配置文件

关键技术

  1. 符号链接(Symlink):实现配置文件的共享和统一管理
  2. Shell 脚本自动化:简化配置流程,一键完成所有设置

优势

  • 一键完成:运行一个命令即可完成所有配置
  • 统一管理:所有项目共享同一份配置
  • 自动同步:修改共享配置后,所有项目自动生效
  • 自动忽略:自动添加到 .gitignore,避免误提交
  • 零维护:无需手动管理每个项目的配置