Wie aktualisiere ich eine Formel mit Homebrew?

164

Wie aktualisiere ich eine Formel?

Ich rannte brew update. Dann, laufend brew outdated, gibt Folgendes aus:

mongodb (1.4.3-x86_64 < 1.6.5-x86_64)

Somit mongodbist veraltet.

Wie aktualisiere ich es? Muss ich nur deinstallieren und dann installieren?

ma11hew28
quelle

Antworten:

242

Ich denke, der richtige Weg ist

brauen Upgrade Mongodb

Es wird die Mongodb-Formel aktualisieren. Wenn Sie alle veralteten Formeln aktualisieren möchten, einfach

Gebräu-Upgrade

yc
quelle
Dies ist in der Tat jetzt der richtige Weg . Die alten Methoden funktionieren weiterhin, wenn Sie Anhängen verwenden --force.
mxcl
58

Sie können alle veralteten Pakete wie folgt aktualisieren:

brew install `brew outdated`

oder

brew outdated | xargs brew install

oder

brew upgrade

Dies ist von der Brauerei ..

zum Aktualisieren der individuellen Formel:

brew install formula-name && brew cleanup formula-name
user689741
quelle
Was macht die Bereinigung?
Websites
3
Ich denke, ich kann jetzt einfach den brew upgrade outdatedganzen komplexen Mist tippen und überspringen.
Warren P
4
oder einfachbrew upgrade
CharlieMezak
20

Sie müssen zuerst die lokalen Formeln aktualisieren, indem Sie dies tun

brew update

und aktualisieren Sie dann das Paket, indem Sie dies tun

brew upgrade formula-name

Ein Beispiel wäre, wenn ich mongodb aktualisieren wollte , würde ich so etwas tun, vorausgesetzt, mongodb war bereits installiert:

brew update && brew upgrade mongodb && brew cleanup mongodb
Joseph
quelle
11

Nun, ich habe es einfach getan

brew install mongodb

und befolgte die Anweisungen, die STDOUTnach Abschluss der Installation ausgegeben wurden , und das scheint gut funktioniert zu haben. Ich denke, es funktioniert irgendwie genauso make installund überschreibt (Upgrades) eine vorherige Installation.

ma11hew28
quelle
9
Brew installiert Mongodb in $HOMEBREW_PREFIX/Cellar/mongodb/<version>/, so dass Sie höchstwahrscheinlich beide Versionen installiert haben. Anschließend wird die neueste Version $HOMEBREW_PREFIX/binmit usw. verknüpft. Durch Ausführen brew cleanup mongodbwird die alte Version gelöscht.
Mipadi
2

Sie können Brew Install nicht verwenden, um eine installierte Formel zu aktualisieren. Wenn Sie alle veralteten Formeln aktualisieren möchten, können Sie den folgenden Befehl verwenden.

brew outdated | xargs brew upgrade
UnchartedWorks
quelle
Sie sollten Ihre Lösung besser erklären, um den anderen SO-Benutzern hilfreich zu sein. Nur Code zu posten ist hier keine bewährte Methode.
Massimiliano Kraus
0

Ich bevorzuge es, alle Homebrew-Formeln und Homebrew-Fassformeln zu aktualisieren .

Ich habe meiner Umgebung für diese eine Bourne-Shell-Funktion hinzugefügt (ich lade eine .bashrc)

function updatebrew() {
set -x;
brew update;
brew cleanup;
brew cask upgrade --greedy
)
}
  • set -x für Transparenz: Damit das Terminal alles ausgibt, was Homebrew im Hintergrund tut.
  • brew update um Homebrew-Formeln zu aktualisieren
  • brew cleanup um nach der Installation verbleibende Änderungen zu entfernen
  • brew cask upgrade --greedyinstalliert alle Fässer; sowohl diejenigen mit Versionsinformationen als auch diejenigen ohne
Jonathan Komar
quelle