2011-03-26 18 views
23

Paket yöneticisi olarak Homebrew kullanıyorum. Bu komutu çalıştırın:Homebrew iki uyarı üretiyor

brew update 

Ama bu hata var:

error: unable to unlink old 'bin/brew' (Permission denied)

Error: Failed while executing git pull http://github.com/mxcl/homebrew.git master

sudo altında tekrar Koşu:

: şimdi

/usr/local/Library/Homebrew/brew.h.rb:1: warning: already initialized constant FORMULA_META_FILES
/usr/local/Library/Homebrew/brew.h.rb:2: warning: already initialized constant PLEASE_REPORT_BUG error: The following untracked working tree files would be overwritten by checkout:

.gitignore
;;; big list goes here ;;;;

Ve her demlemek komutu bu uyarı oluşturur

/usr/local/Library/Homebrew/brew.h.rb:1: warning: already initialized constant FORMULA_META_FILES
/usr/local/Library/Homebrew/brew.h.rb:2: warning: already initialized constant PLEASE_REPORT_BUG

Herhangi bir fikir wha t yanlış mı gidiyor?

cevap

42

Çıktısı alınmadan önce güncellenen yarısı gibi görünüyor ve şimdi kötü durumda. Sen geri bozulmamış sürümlerine tüm git kontrollü dosyaları sıfırlamak gerekir

cd /usr/local && git reset --hard HEAD 

(örneğin homebrewleri) isteyebilirsiniz. Git komutu olan sudo'a ihtiyacınız olabilir. Bundan sonra, istediğiniz izinleri düzeltmeyi deneyebilirsiniz (bu direkte hiçbir dosyaya ait olmayan bir kişi olması gerektiğinde, bu sudo chown -R yourname:staff /usr/local'u çalıştırmak kadar basit olabilir).

+0

Yani, Git sorunu ve demlemek değil mi? Üzgünüm, Git'e aşina değilim. – Chiron

+3

Bir git sorunu değil. Bu, demleme kurulumunu güncellemek için git kullanırken karşılaşılan bir izin sorunu. –

0

Bugün benzer bir sorun yaşadım, bu bana doğru yönde işaret etti, ancak sıfırlama yeterli değildi. Nasıl emin değilim, ama her nasılsa bir kaç programlanmamış dosyaları vardı, ben git durumunu çalıştırdıktan sonra fark ettim. O demlemek güncelleme

1

/usr/local/bin kullanıcı için yazma izinlerine sahip olduğundan emin olun bir cazibe gibi çalıştı sonra

Sonunda, bütün dosyaları (sadece güvenli olması için) bir kopyasını yaptı ve onları silindi hesabı.

+0

Benim için çalıştı, "bin /" bilinmeyen bir UID numarası vardı :) –