【问题标题】:Does Python have something as robust as Ruby's rvm?Python 是否具有与 Ruby 的 rvm 一样强大的功能?
【发布时间】:2011-03-29 15:46:36
【问题描述】:

这不是this question 的副本。

我已经知道virtualenvvirtualenvwrapperpip 但它们似乎并不完全符合我的要求。

我正在寻找一种方法,不仅可以安装多个版本的 Python,还可以安装多个版本的 Django(例如),并混合匹配“活动”版本的 python 和“活动”版本的 Django .

例如我有 Django 1.0、1.1 和 1.2,并且主干是“活动的”。我希望能够在 Python 2.5、2.6 和 2.7 上对其进行测试。然后让 Django 1.2 “激活”并再次在我所有的 Python 版本上进行测试。

对于该示例,我可以看到通过使用 virtualenv 可能会如何获得,但是假设我有 5 个版本的 Django 应用程序,我想在 Python 2.5、2.6 和 2.7 以及 Django 版本 1.0 的每个组合上进行测试, 1.1 和 1.2。在这一点上,afaik,我需要创建的虚拟环境的数量变得难以管理。

我只想说,让 Python X 版“活动”,让 Django X 版“活动”,并使 MyApp X 版“活动”,而无需处理创建和切换 virtualenvs(我绝对不想做一堆引导脚本)。

我正在寻找的东西是否存在于 Python 中,或者我是否缺少关于 virtualenv、virtualenvwrapper 和 pip 的东西已经可以优雅地处理这个问题?

【问题讨论】:

  • 添加到我的测试示例中:对于有兴趣针对多个 Python 版本测试多个依赖版本的任何人,“tox”是一个很好的工具

标签: python virtualenv pip virtualenvwrapper


【解决方案1】:

我相信pythonbrew 就是您要找的。​​p>

编辑pyenv 看起来像是自 2013 年以来的首选解决方案。

【讨论】:

  • 在使用 buildout 很长一段时间后,我认为 virtualenv 是一种更好的方式,即使它不是我想要的。 pythonbrew 看起来和我要找的完全一样,谢谢!
  • 仅供参考:链接显示 pythonbrew 已弃用。
  • 谢谢,我已经考虑到了。我可能应该一起删除 pythonbrew 引用。
【解决方案2】:

我相信你可以使用buildout 来做到这一点,虽然我不是特别熟悉它......例如http://blog.mfabrik.com/2010/07/16/easily-install-all-python-versions-under-linux-and-osx-using-collective-buildout-python/

【讨论】:

猜你喜欢
  • 2011-02-18
  • 1970-01-01
  • 2020-05-19
  • 1970-01-01
  • 2011-11-27
  • 1970-01-01
  • 1970-01-01
  • 2016-04-06
  • 1970-01-01
相关资源
最近更新 更多