Gerrit Code Review

Gerrit Code Review

🚀 Gerrit 代码审查 MCP 服务器

此 MCP 服务器提供了与 Gerrit 代码审查系统集成的功能,允许 AI 助手通过简单的接口查看和评估代码变更及其详细信息,极大地提升了代码审查的效率和便捷性。

smithery 徽章

🚀 快速开始

此 MCP 服务器提供了与 Gerrit 代码审查系统集成的功能,允许 AI 助手通过简单的接口查看和评估代码变更及其详细信息。在使用前,请确保满足以下先决条件:

  1. 安装 Python 3.8 或更高版本。
  2. 确保 Gerrit 服务器已启用 HTTPS 访问。
  3. 配置正确的 HTTP 凭证以访问 Gerrit REST API。

✨ 主要特性

该服务器提供了一套精简的代码审查工具:

获取变更详情

fetch_gerrit_change(change_id: str, patchset_number: Optional[str] = None)
  • 获取完整的变更信息,包括文件和补丁集。
  • 显示每个修改文件的详细差异信息。
  • 展示文件更改、插入和删除。
  • 支持查看特定补丁集。
  • 返回全面的变更详情,涵盖项目和分支信息、作者和审阅者信息、评论和审查历史记录、文件修改内容及差异、当前补丁集信息。

比较补丁集差异

fetch_patchset_diff(change_id: str, base_patchset: str, target_patchset: str, file_path: Optional[str] = None)
  • 比较两个补丁集之间的差异。
  • 查看特定文件的差异或所有更改文件。
  • 分析代码修改在补丁集版本中的演变。
  • 跟踪审查迭代中的变更发展。

📦 安装指南

通过 Smithery

使用以下命令安装和管理此包:

smith install @cayirtepeomer/gerrit-code-review-mcp

手动安装

  1. 克隆仓库:
    git clone https://github.com/cayirtepeomer/gerrit-code-review-mcp.git
    cd gerrit-code-review-mcp
    
  2. 安装依赖项:
    pip install -r requirements.txt
    

💻 使用示例

基础用法

审查完整的变更:

# 获取变更 23824 的最新补丁集
change = fetch_gerrit_change("23824")

高级用法

比较特定的补丁集

# 比较变更 23824 中补丁集 1 和 2 的差异
diff = fetch_patchset_diff("23824", "1", "2")

获取某个文件在两个补丁集之间的具体变化

# 获取 change_id 下 file_path 文件在 base 到 target 补丁集的修改内容
content_diff = fetch_patchset_diff(change_id, base, target, file_path=file_path)

📚 详细文档

配置步骤

环境变量设置

在项目的根目录下创建一个 .env 文件,并添加以下内容:

GERRIT_HOST=your-gerrit-host
GERRIT_USERNAME=username
GERRIT_HTTP_PASSWORD=http-password

your-gerrit-host 替换为您的 Gerrit 服务器地址,例如:https://gerrit.example.com

MCP 配置

在项目的根目录下创建或修改 config.json 文件,并添加以下内容:

{
"servers": {
"gerrit-code-review-mcp": {
"host": "localhost",
"port": 8080,
"ssl": false,
"auth": {
"type": "digest",
"username": "your-username",
"password": "your-http-password"
}
}
}
}

故障排除

如果遇到连接问题:

  1. 确保 HTTP 密码设置正确。
  2. 检查 GERRIT_HOST 设置。
  3. 确保 Gerrit 服务器启用了 HTTPS 访问。
  4. 使用 curl 测试连接:
    curl -u "username:http-password" https://your-gerrit-host/a/changes/
    
  5. 确认您的账户在 Gerrit 上有访问权限。

🔧 技术细节

该服务器使用 Gerrit REST API 进行交互,具备以下特点:

  • 快速可靠的变更信息检索。
  • 使用 HTTP 摘要认证的安全性。
  • 支持多种 Gerrit REST 终端点。
  • 清洁且易于维护的代码库。
  • HTTPS 加密以确保通信安全。

📄 许可证

此项目采用 MIT 许可证。

贡献指南

我们欢迎任何贡献!请按照以下步骤操作:

  1. 叉取仓库。
  2. 创建功能分支。
  3. 进行修改。
  4. 提交拉取请求。
  • 0 关注
  • 0 收藏,12 浏览
  • system 提出于 2025-09-26 23:09

相似服务问题

相关AI产品