Antworten:
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
brew upgrade outdated
ganzen komplexen Mist tippen und überspringen.
brew upgrade
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
Nun, ich habe es einfach getan
brew install mongodb
und befolgte die Anweisungen, die STDOUT
nach Abschluss der Installation ausgegeben wurden , und das scheint gut funktioniert zu haben. Ich denke, es funktioniert irgendwie genauso make install
und überschreibt (Upgrades) eine vorherige Installation.
$HOMEBREW_PREFIX/Cellar/mongodb/<version>/
, so dass Sie höchstwahrscheinlich beide Versionen installiert haben. Anschließend wird die neueste Version $HOMEBREW_PREFIX/bin
mit usw. verknüpft. Durch Ausführen brew cleanup mongodb
wird die alte Version gelöscht.
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
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 aktualisierenbrew cleanup
um nach der Installation verbleibende Änderungen zu entfernenbrew cask upgrade --greedy
installiert alle Fässer; sowohl diejenigen mit Versionsinformationen als auch diejenigen ohne
--force
.