如何使用自制软件更新公式?


164

如何更新公式?

我跑了brew update。然后,运行brew outdated,输出:

mongodb (1.4.3-x86_64 < 1.6.5-x86_64)

因此,mongodb已经过时了。

如何升级?我是否要先卸载然后再安装?

Answers:


242

我认为正确的做法是

酿造升级mongodb

它将升级mongodb公式。如果要升级所有过时的公式,只需

酿造升级


这确实是现在的正确方法。如果使用append,旧方法仍然可以使用--force
mxcl 2012年

58

您可以像这样更新所有过时的软件包:

brew install `brew outdated`

要么

brew outdated | xargs brew install

要么

brew upgrade

这是来自酿造现场的。

用于升级单个公式:

brew install formula-name && brew cleanup formula-name

清理有什么作用?
网站

3
我认为现在可以键入brew upgrade outdated并跳过所有复杂的废话。
沃伦·P

4
或只是brew upgrade
CharlieMezak

20

您首先需要通过执行以下操作来更新本地公式

brew update

然后通过升级包

brew upgrade formula-name

一个例子是,如果我想升级mongodb,我会做这样的事情,假设mongodb已经安装:

brew update && brew upgrade mongodb && brew cleanup mongodb

11

好吧,我只是做了

brew install mongodb

并按照STDOUT完成安装后输出的说明进行操作,这似乎效果很好。我猜想它的工作原理就像make install和覆盖(升级)以前的安装。


9
Brew将mongodb安装到中$HOMEBREW_PREFIX/Cellar/mongodb/<version>/,因此您很可能同时安装了两个版本。然后,它将最新版本符号链接到$HOMEBREW_PREFIX/bin,等等。运行brew cleanup mongodb将删除旧版本。
mipadi 2010年

2

您不能使用brew install升级已安装的公式。如果要升级所有过时的公式,可以使用以下命令。

brew outdated | xargs brew upgrade

您可以更好地解释您的解决方案,以帮助其他SO用户。在此处仅发布代码不是最佳实践。
Massimiliano Kraus

0

我更喜欢升级所有自制配方自制酒桶配方

我为此环境添加了一个Bourne shell函数(我加载了.bashrc)

function updatebrew() {
set -x;
brew update;
brew cleanup;
brew cask upgrade --greedy
)
}
  • set -x 透明性:这样终端可以输出Homebrew在后台执行的操作。
  • brew update 更新自制配方
  • brew cleanup 删除安装后剩下的任何更改
  • brew cask upgrade --greedy将安装所有木桶;有版本信息的人和没有版本信息的人
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.