Homebrew ile bir formülü nasıl güncelleyebilirim?


164

Bir formülü nasıl güncelleyebilirim?

Koştum brew update. Sonra, çalışan brew outdated, çıktılar:

mongodb (1.4.3-x86_64 < 1.6.5-x86_64)

Böylece, mongodbmodası geçmiş.

Nasıl yükseltebilirim? Sadece kaldırıp yükler miyim?

Yanıtlar:


242

Bence doğru yapmanın yolu

demlemek yükseltme mongodb

Mongodb formülünü yükseltir. Tüm eski formülleri yükseltmek istiyorsanız,

demlemek yükseltme


Bu gerçekten doğru yoldur şimdi . Append kullanılırsa eski yollar çalışmaya devam eder --force.
mxcl

"Demlemek <packagename> demlemek" çalıştırdığınızda, aslında tüm eski paketleri yükseltmek, saniyeler yerine saatler sürüyor. Bu çok kötü bir tasarım. "SADECE tek bir paketi yükseltmenin" doğru yolu, yine kafa karıştırıcı bir tasarım olan "brew install <packagename>" dir.
xuancong84

58

Aşağıdaki gibi tüm eski paketleri güncelleyebilirsiniz:

brew install `brew outdated`

veya

brew outdated | xargs brew install

veya

brew upgrade

Bu demlemek sitesinden ..

bireysel formülü yükseltmek için:

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

Temizleme ne yapar?
siteler

3
Sanırım artık brew upgrade outdatedtüm karmaşık saçmalığı yazıp atlayabilir.
Warren P

4
ya da sadecebrew upgrade
CharlieMezak

20

İlk önce yerel formülleri

brew update

ve ardından paketi yükseltin

brew upgrade formula-name

Eğer mongodb yükseltmek istedim , mongodb zaten yüklü varsayalım , böyle bir şey yapmak bir örnek olurdu :

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

11

Sadece yaptım

brew install mongodb

ve STDOUTyüklemeyi bitirdikten sonra verilen talimatları izledi ve bu iyi çalıştı. Sanki biraz daha iyi çalışıyor make installve bir önceki kurulumun üzerine yazıyor (yükseltmeler).


9
Brew mongodb'u içine yükler $HOMEBREW_PREFIX/Cellar/mongodb/<version>/, böylece her iki versiyon da yüklüdür. Daha sonra $HOMEBREW_PREFIX/bin, vb en son sürümü sembolik . Koşu brew cleanup mongodbeski sürümü silecektir.
mipadi

2

Kurulu bir formülü yükseltmek için demleme kurulumunu kullanamazsınız. Tüm eski formülleri yükseltmek istiyorsanız, aşağıdaki komutu kullanabilirsiniz.

brew outdated | xargs brew upgrade

Diğer SO kullanıcılarına yardımcı olmak için çözümünüzü daha iyi açıklayabilirsiniz. Sadece kod göndermek burada en iyi uygulama değildir.
Massimiliano Kraus

0

Tüm homebrew formüllerini ve homebrew fıçı formüllerini yükseltmeyi tercih ederim .

Bunun için bir Bourne kabuğu işlevi ekledim (bir .bashrc yüklüyorum)

function updatebrew() {
set -x;
brew update;
brew cleanup;
brew cask upgrade --greedy
)
}
  • set -x şeffaflık için: Böylece terminal, Homebrew'un arka planda ne yaptığını çıkarır.
  • brew update homebrew formüllerini güncelleme
  • brew cleanup kurulumlardan sonra kalan değişiklikleri kaldırmak için
  • brew cask upgrade --greedytüm fıçıları kuracak; hem sürüm bilgisi olan hem de olmayanlar
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.