本文档概述了为 Dear ImGui 代码库贡献的流程和指南。它为新老贡献者提供了全面的指导,涵盖了从报告问题到提交代码更改的各个方面。有关将 Dear ImGui 集成到您的应用程序的信息,请参阅 集成指南。
Dear ImGui 欢迎各种形式的贡献,包括错误报告、功能请求、文档改进和代码提交。该项目维护着特定的指南,以确保贡献是有益的,并且可以被维护者高效地审查。
来源: docs/CONTRIBUTING.md10-65 docs/CONTRIBUTING.md66-75
了解在哪里以及如何与 Dear ImGui 项目沟通对于有效贡献至关重要。
Dear ImGui 使用 GitHub 的“问题”和“讨论”功能进行不同类型的沟通。
| 渠道 | 适合 | 备注 |
|---|---|---|
| 问题 | 错误报告、功能请求、关于现有功能的疑问 | 用作集中的知识数据库 |
| 讨论 | 设置问题、链接问题、字体加载问题 | 用于故障排除的初始设置 |
经验法则是:如果 Dear ImGui 已经在您的应用程序中运行并且您以前使用过它,您可以打开一个问题。否则,请使用讨论来解决与设置相关的问题。
有效报告问题对于维护者理解和解决问题至关重要。该项目对问题报告有特定要求。
报告问题时
通过 Pull Request 贡献代码是改进 Dear ImGui 的宝贵方式。在提交 PR 时,请理解您也要求维护者审查您的代码并最终接管其维护。
local_variable, FunctionName(), MemberName 命名约定。// Text Comment, //CodeComment(); 注释风格。理解存储库结构对于有效贡献很重要。以下是存储库相对于贡献的组织方式。
来源: .github/pull_request_template.md1-7 docs/CONTRIBUTING.md1-9
在为 Dear ImGui 做贡献时,有一些重要的版权注意事项需要了解。
重要提示:提交 PR 时,请勿修改文件中的任何版权声明。
为了有效地为 Dear ImGui 做贡献,请熟悉这些资源。
| 资源 | 目的 |
|---|---|
| Wiki | 代码片段、链接和资源 |
| 入门指南 | 设置 Dear ImGui |
| FAQ (docs/FAQ.md) | 常见问题解答 |
| FONTS.md | 字体相关信息 |
| 演示窗口 | 功能的交互式演示 |
| GitHub 问题/标签 | 搜索类似的问题 |
一些具体的建议
ImGui::ShowDemoWindow() 来探索功能及其实现。为了增加您的贡献被接受的机会:
请记住,即使 PR 未立即合并,它仍然可以为展示需求和可能的解决方案提供价值。许多 PR 在找到最终形式之前会通过讨论进行演变。
以下图表显示了贡献流程与 Dear ImGui 代码库中特定代码实体的关系。