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