如何使用Brew安装旧公式?

swd*_*dev 26 python homebrew

使用安装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
Run Code Online (Sandbox Code Playgroud)

但最新版本的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).从文档中,没有明确的方法可以实现与此相同的结果brew versions python.

小智 33

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

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

brew search python
Run Code Online (Sandbox Code Playgroud)

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

brew install python@2
Run Code Online (Sandbox Code Playgroud)

一些替代方法

切换到以前的版本

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

brew switch python 2.7.9
Run Code Online (Sandbox Code Playgroud)

此命令将切换到版本2.7.9

brew switch python 2.7.10
Run Code Online (Sandbox Code Playgroud)

这会将您转回2.7.10版本

Formula GitHub历史

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

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

  1. https://github.com/Homebrew/homebrew-core/commits/master/Formula/python.rb
  2. 查找提交摘要为"python 2.7.10"的条目
  3. 查找并复制其下方条目的提交哈希值(1681e19在此示例中)
  4. 输入git checkout 1681e19 /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core/Formula/python.rb终端

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