返回工具箱
🤖

Git AI 用法指南

借助 AI 能力提升 Git 使用效率,智能生成提交信息、理解代码变更

GitAI 辅助效率工具

什么是 Git AI?

Git AI 是指将 AI 能力集成到 Git 工作流中,帮助开发者更高效地使用 Git。主要功能包括: 自动生成规范的提交信息、解释复杂的 Git 命令、分析代码变更、辅助解决合并冲突等。

✍️

智能提交信息

根据 diff 自动生成符合规范的 commit message

🔍

变更分析

用自然语言解释代码变更的内容和目的

🤝

冲突解决

AI 辅助理解并解决 merge conflicts

📚

命令解释

将复杂的 Git 命令翻译成易懂的说明

方案一:AI 生成提交信息

使用 aicommit2

aicommit2 是一个 CLI 工具,使用 AI 自动分析暂存区的变更并生成提交信息。

安装
npm install -g aicommit2
使用
aicommit2

AI 会自动分析 git diff 并生成提交信息,确认后即可提交

使用 Commitizen + AI

结合 Commitizen 规范提交,配合 AI 插件自动填充。

安装配置
npx commitizen init cz-git --yarn --dev --exact # 使用 AI 辅助:配置 cz-git 的 prompt 结合 AI API

方案二:VS Code 插件

GitHub Copilot

在源代码管理面板中,点击「生成提交信息」按钮,Copilot 会根据变更自动建议提交信息。

需要 GitHub Copilot 订阅支持多种提交信息格式可自定义 prompt

GitLens + AI

GitLens 增强了 VS Code 的 Git 功能,结合 AI 可以更好地理解代码历史变更。

可视化代码作者信息强大的 blame 功能可集成 AI 解释变更

Codeium

免费的 AI 编程助手,也提供智能提交信息生成功能。

免费使用支持多种语言本地运行可选

方案三:自定义 Git Hook + AI API

通过编写 Git Hook 脚本,在 commit 前调用 AI API 自动生成提交信息。

.git/hooks/prepare-commit-msg
#!/bin/bash
# 获取当前 staged 的 diff
DIFF=$(git diff --cached)

# 调用 AI API 生成提交信息(示例使用 OpenAI)
AI_MSG=$(curl -s https://api.openai.com/v1/chat/completions \
  -H "Authorization: Bearer $OPENAI_API_KEY" \
  -H "Content-Type: application/json" \
  -d "{
    \"model\": \"gpt-4o\",
    \"messages\": [{
      \"role\": \"user\",
      \"content\": \"根据以下 diff 生成简洁的 git commit message,使用中文,格式:<type>: <subject>\n\n${DIFF}\"
    }]
  }" | jq -r '.choices[0].message.content')

# 将 AI 生成的信息写入 commit message 模板
echo "$AI_MSG" > "$1"

配置后,每次 git commit 时都会自动调用 AI 生成提交信息草稿,你可以根据需要修改后保存。

最佳实践

💡 始终审查 AI 生成的内容

AI 生成的提交信息仅供参考,提交前务必审查其准确性,确保真实反映了代码变更。

📋 遵循团队规范

在 AI prompt 中指定团队的提交信息规范(如 Conventional Commits),保持一致性。

🔒 注意敏感信息

使用 AI API 时,diff 内容会被发送到第三方服务,确保不包含敏感信息(密钥、密码等)。

🏃 小步提交

AI 对小而聚焦的变更生成的提交信息更准确,建议保持小步提交的习惯。

常用 AI Git 命令速查

aicommit2AI 生成提交信息并提交
git diff | ai "解释这段变更"用 AI 解释当前变更
ai "生成这段代码的 commit message"复制 diff 后让 AI 生成提交信息