有人可以简单地向我解释下载GitHub代码并对其进行处理的正确工作流程,快速尝试调整和修复吗?
解决方案1
这显然不是一个好的解决方案,因为我甚至不知道源代码在哪里。而不是使用macOS shell。我想查看所有文件,复制/粘贴,更正并尝试。
解决方案2
每次我想要处理它时,更新PYTHONPATH会感觉很奇怪。但更奇怪的是,因为初始脚本是在macOS shell中使用的,所以当通过Python shell调用它时,我无法将参数传递给main()函数。
我在这里遗漏了什么吗? python repos看起来像发布的代码几乎无法调整和快速测试,这是正常的吗?
答案 0 :(得分:2)
这些解决方案都不是正确的方法。当你需要修补python代码时,因为你想添加一个功能或修复一个bug,你应该按照以下步骤进行:
--help
将为您指明正确的方向。developers
部分https://github.com/<user>/<project>
)~/Workspace
)git clone https://github.com/<user>/<project>
cd <project>
virtualenv var
(您可以使用您想要的任何名称,但我的偏好适用于var
) var/bin/pip install -r requirements.txt
var/bin/python
,您正在开发的所有模块都可以在python REPL中找到。这应该适用于绝大多数python项目。有些项目会向您展示其他工具,例如virtualenv
用于该步骤(提示:如果有requirements.txt
您知道它将做什么),或将使用{ {1}}或将使用zc.buildout
,但这些通常会告诉您如何构建自述文件。
你这样做会感到很奇怪。像每次我想要处理它时,更新PYTHONPATH会感觉很奇怪。但更奇怪的是,因为初始脚本是在macOS shell中使用的,所以当通过Python shell调用它时,我无法将参数传递给main()函数。
pipenv
或virtualenv
这样的工具可以创建包含的环境,让您舒适地开发。您甚至可以在env的bin目录中找到您在路径中找到的脚本。您还可以找到测试套件,以便根据回归测试您的更改!
python repos看起来像发布的代码几乎无法调整并快速测试,这是正常的吗?
通常开发发生在项目的特定分支中。所以在github页面上,你可能会看到stable / release分支,而所有新东西都发生在devel分支中。总是看问题,并在做代码之前先与项目的维护人员沟通,否则可能会导致你的贡献被拒绝。