QG地面站
代码提交本节包含有关贡献代码的主题,包括编码样式、测试和拉取请求的格式。
信息
QGroundControl (QGC) 是双重许可为Apache 2.0和GPLv3。所有捐款都必须在两个许可证下进行。
编码风格高级样式信息:
选项卡扩展到4个空格
Pascal/CamelCase命名约定
样式本身是以下示例文件中的文档:
CodingStyle.cc
CodingStyle.h
CodingStyle.qml
单元测试QGroundControl(QGC) 包含一组单元测试,这些单元测试必须在pull请求被接受之前通过。向QGC添加新的复杂子系统应包括相应的新单元测试以对其进行测试。
单元测试的完整列表可以在UnitTestList.cc。
要运行单元测试:
内置debug模式与QGC_UNITTEST_BUILD定义。
复制展开/qgroundcontrol-start.sh脚本中的调试目录
运行全部从命令行进行单元测试,使用--unittest命令行选项。对于Linux,如下所示:
qgroundcontrol-start.sh --unittest
运行个人通过指定测试名称进行单元测试:--unittest:RadioConfigTest。对于Linux,如下所示:
qgroundcontrol-start.sh --unittest:RadioConfigTest
拉取请求所有拉取请求都经过QGC CI构建系统,该系统构建发布和调试版本。如果有编译器警告,生成将失败。此外,还针对受支持的OS调试版本运行单元测试。
许可证QGroundControl许可证QGroundControl(QGC) 被双重授权为Apache 2.0和gplv3。所有捐款都必须在两个许可证下进行。代码库的用户可以在任何一个许可证下自由使用它。
警告
QGroundControl许可规则禁止重复使用任何copyleft (例如GPL) 许可代码。所有贡献必须是原始的或来自兼容许可证 (BSD 2/3条款,麻省理工学院,Apache 2.0)。
双重方法是必要的,能够提供QGroundControl通过iOS和Android应用商店,并提供开源社区选择。
Apache 2.0许可证的Apache 2.0许可证是一种允许在任何环境 (包括专有应用程序) 中建建和使用QGC的许可许可证。它允许为移动应用程序商店构建QGC。使用Apache 2.0构建时,需要商业Qt许可证。
GPL v3许可证的GPL v3许可证是一个强大的copyleft许可证。在本许可下构建QGC时,可以使用Qt的开源版本。我们的许可授予使用更高版本的许可,但是,必须在3.0下进行贡献。
文档,图稿,图像QGroundControl文档,图稿和图像的许可CC BY 4.0。
另请参见qgroundcontrol/COPYING.md
qgroundcontrol/贡献.md
qgc-用户指南/许可证
qgc-dev-guide/LICENSE