贡献¶
我们欢迎您查看现有问题列表,寻找可以解决的 bug 或可以改进的功能。如果您有关于扩展 TPOT 的想法,请提交一个新问题,以便我们进行讨论。
贡献指南¶
我们欢迎您查看现有问题列表,寻找可以解决的 bug 或可以改进的功能。如果您有关于扩展 TPOT 的想法,请提交一个新问题,以便我们进行讨论。
项目布局¶
TPOT 的最新稳定版本位于 main 分支,而开发中的最新版本位于 development 分支。如果您打算贡献代码,请确保您正在查看和操作正确的分支。
目录结构如下
- TPOT 的所有代码源文件都在
tpot
目录下 - 文档源文件在
docs_sources
目录下 - 文档中的图片在
images
目录下 - TPOT 的教程在
tutorials
目录下 - TPOT 的单元测试在
tests.py
文件中
在进行任何重大贡献之前,请务必熟悉项目布局,尤其要确保将所有代码更改发送到 development
分支。
如何贡献¶
向 TPOT 贡献代码的首选方式是在 GitHub 上 Fork 主仓库
-
Fork 项目仓库:点击页面顶部的 'Fork' 按钮。这会在 GitHub 服务器上您的账号下创建一个代码副本。
-
将此副本克隆到您的本地磁盘
$ git clone git@github.com:YourUsername/tpot.git $ cd tpot
-
创建一个分支来存放您的更改
$ git checkout -b my-contribution
-
确保您的本地环境已正确设置为开发环境。安装说明与用户说明几乎相同,只是 TPOT 不应被安装。如果您的计算机上已安装 TPOT,请确保您正在使用未安装 TPOT 的虚拟环境。此外,您应该确保已将
pytest
包安装到您的开发环境中,以便在本地测试更改。$ conda install pytest
-
开始在您新创建的分支上进行更改,记住永远不要在
main
分支上工作!在您计算机上的此副本上使用 Git 进行版本控制。 -
检查您的更改没有破坏任何现有测试,并且通过了所有新测试。在终端中导航到
tpot/tpot/
文件夹并运行命令pytest
来启动所有测试。(注意:您的开发环境中必须安装pytest
包才能使其工作)$ pytest
-
完成编辑和本地测试后,运行
$ git add modified_files $ git commit
将您的更改记录到 Git 中,然后使用以下命令将其推送到 GitHub
$ git push -u origin my-contribution
最后,访问您 Fork 的 TPOT 仓库网页,点击 'Pull Request' (PR) 将您的更改发送给维护者进行审查。请确保您将 PR 发送到 dev
分支,因为 main
分支保留用于最新的稳定版本。这将启动 CI 服务器来检查项目的所有单元测试是否运行并通过,并向维护者发送一封电子邮件。
(如果以上任何内容对您来说像魔术一样,请在网上查找Git 文档。)
提交拉取请求之前¶
在提交贡献的拉取请求之前,请仔细检查此清单,确保您已完成所有必要步骤,以便我们能够高效地审查和接受您的更改。
如果您的贡献以任何方式更改了 TPOT
如果您的贡献涉及任何代码更改
-
更新项目单元测试以测试您的代码更改。
-
确保您的代码使用docstrings和注释进行了适当的注释,解释了您在非显而易见的编码实践背后的原理。
如果您的贡献需要新的库依赖项
- 请仔细检查新的依赖项是否易于通过
pip
或 Anaconda 安装。如果依赖项需要复杂的安装过程,那么我们很可能不会合并您的更改,因为我们希望 TPOT 保持易于安装。
提交拉取请求之后¶
提交拉取请求后,GitHub 将自动对您的更改运行单元测试,并确保您更新后的代码能够构建和运行。我们还使用自动检查代码质量和测试覆盖率的服务。
提交拉取请求后不久,请返回检查您的代码是否通过了这些检查。如果任何检查结果显示红色的 X,请尽力解决错误。