跳到主要内容
版本:3.1.0(预览)

如何贡献

Apache Ambari 贡献通过 Apache JIRA 和 GitHub 公开开发。开始前请搜索已有的 JIRA 问题和讨论;已有问题覆盖该工作时应复用它。

选择并界定工作范围

描述问题、受影响模块、用户可见行为以及恢复行为。涉及 Server、Agent、React UI 或遥测的变更应标明每个契约及其负责人。

新功能应在实现前于 JIRA 发布简短设计,说明兼容性、API 或事件变更、权限、迁移、可观测性和回滚,并在设计被接受前征求社区反馈。

在派生仓库中开发

在 GitHub 派生 apache/ambari 并克隆个人派生仓库。将 upstream 指向 apache/ambari,除非 JIRA 指定其他受支持分支,否则以 trunk 为基础。

每项连贯变更创建一个主题分支。不要在功能分支中混入无关清理、生成输出、依赖升级或格式变更。

修改并测试

提交时显式暂存:检查 git diff,只暂存预期路径,并在每次提交前检查 git diff --cached。提交主题中使用 JIRA key。

为变更行为添加聚焦测试,包括异步或有状态工作流的失败和恢复路径。运行最相关的 Server、Agent、React 或遥测测试,并记录准确命令及结果。

提交和审查

将主题分支推送到个人派生仓库,并从该分支向 apache/ambari:trunk 发起拉取请求。关联 JIRA,说明实现、风险、测试证据以及源代码或文档限制。

作者不得批准自己的拉取请求。邀请熟悉受影响领域的独立审查者;审查者应检查源代码证据、API 负载、权限和恢复行为,而不能只依据名称或路由。

通过后续提交处理审查意见,保持拉取请求聚焦,并在变更后更新测试证据。只有独立审查完成且自动检查成功后才可合并。