贡献指南
- Fork 仓库
- 创建功能分支:
git checkout -b feature/my-change - 进行修改并添加测试
- 运行完整测试套件:
ctest --test-dir build --output-on-failure - 运行一致性检查:
bash tests/check_consistency.sh - 提交 Pull Request
- 将指令类型添加到
include/htaccess_directive.h(枚举 + AllowOverride 类别) - 在
src/htaccess_parser.c中添加解析逻辑 - 在
src/htaccess_printer.c中添加打印逻辑 - 在
src/htaccess_exec_*.c中创建或更新执行器 - 在
src/mod_htaccess.c中添加执行分发 - 在
src/htaccess_dirwalker.c中添加 AllowOverride 过滤 - 在
src/htaccess_directive.c中添加释放逻辑 - 在
tests/unit/中添加单元测试 - 更新
tests/check_consistency.sh中的预期计数 - 更新 README.md 指令列表
- 模块代码使用 C11,测试使用 C++17
- 4 空格缩进
- 函数和变量使用
snake_case - 常量和宏使用
UPPER_CASE - 热路径中不使用动态内存分配(使用线程本地缓冲区)
- 所有公共函数使用
htaccess_、exec_或lsi_前缀
LiteHTTPD 采用 GPLv3 许可证,与 OpenLiteSpeed 保持一致。