首页 文章

如何使用Brew安装旧公式?

提问于
修改于
浏览 136
24

使用安装Python 2.7.9而不是最新的2.7.10的情况,以前我可以简单地使用 brew versions python 并通过它们在brew中提交SHA来查看所有Python公式版本,然后检查它们以安装特定版本 . 这是 brew versions python 输出的示例:

$ brew versions python
Warning: brew-versions is unsupported and will be removed soon.
You should use the homebrew-versions tap instead:
  https://github.com/Homebrew/homebrew-versions
2.7.9    git checkout 667284f /usr/local/Library/Formula/python.rb
2.7.8    git checkout f26ca5c /usr/local/Library/Formula/python.rb
2.7.7    git checkout d48206e /usr/local/Library/Formula/python.rb
2.7.6    git checkout 3c64184 /usr/local/Library/Formula/python.rb
2.7.5    git checkout a04b443 /usr/local/Library/Formula/python.rb
2.7.3    git checkout 865f763 /usr/local/Library/Formula/python.rb
2.7.4    git checkout 280581d /usr/local/Library/Formula/python.rb
2.7.2    git checkout 97c6869 /usr/local/Library/Formula/python.rb
2.7.1    git checkout 83ed494 /usr/local/Library/Formula/python.rb
2.7      git checkout 1bf3552 /usr/local/Library/Formula/python.rb
2.6.5    git checkout acd49f7 /usr/local/Library/Formula/python.rb
2.6.4    git checkout 843bff9 /usr/local/Library/Formula/python.rb
2.6.3    git checkout 5c6cc64 /usr/local/Library/Formula/python.rb

但最新版本的brew已经删除了 versions 支持,我不明白如何使用https://github.com/Homebrew/homebrew-versions安装以前的Python . 你如何实际安装Python 2.7.9而不是更新的2.7.10?

我想知道如何使用 homebrew-versions 而不是更琐碎的方式 brew versions .

使用 brew versions 我可以很容易地看到来自特定公式的所有版本(看看上面的Python版本由 brew versions python 吐出) . 从doc开始,没有明确的方法可以实现与 brew versions python 相同的结果 .

2 回答

  • 29

    homebrew-versions曾经是最简单的方法,但homebrew-versions已被弃用,并且在当前版本的homebrew中不再可用 .

    要查找可用的版本,请使用以下命令:

    brew search python
    

    列出所有可用的python包,它们会显示旧版本,如 python@2 ,然后您可以使用以下命令安装它们:

    brew install python@2
    

    一些替代方法

    切换到上一版本

    如果您已经安装了旧版本的公式并且尚未将其删除,则只需切换符号链接以使用brew命令引用它 .

    brew switch python 2.7.9
    

    此命令将切换到版本2.7.9

    brew switch python 2.7.10
    

    这会将您转回2.7.10版本

    Formula GitHub历史

    如果您的系统上仍然没有可用的旧版本,那么您可以尝试另一种方法,但它更难以且几乎肯定不受Homebrew的支持,因此如果您最终遇到问题,则可能无法依赖他们的帮助 .

    https://github.com/Homebrew/homebrew-core/commits/master/Formul/<formula>.rb 应该带您到该公式的提交历史记录 . 有关安装python 2.7.9的示例,请执行以下操作:

    • 转到 https://github.com/Homebrew/homebrew-core/commits/master/Formula/python.rb

    • 查找包含"python 2.7.10"提交摘要的条目

    • 查找并复制其下方条目的提交哈希值(本例中为 1681e19

    • 输入 git checkout 1681e19 /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core/Formula/python.rb 进入终端

    从这一点开始,您可以做任何通常用旧版本方法安装旧版本python的操作 . 这似乎是所有旧方法正在做的事情 .

  • 4

    Homebrew不可能't support installing formulas from git history, although it' . 在自制版本的tap中没有python *公式,因为我认为它们需要维护很多工作并且不能提供最好的用户体验 . pyenv是一个很好的工具,可以解决许多与保持多个蟒蛇相关的问题 . 还有一个user-maintained tap与较旧的Python版本;你可以在那里贡献一个2.7.9的公式 .

相关问题