Bagaimana cara memperbaiki minuman setelah peningkatan OSX ke Yosemite?


181

Saya menghadapi beberapa masalah dengan Homebrew. Saya meningkatkan ke Yosemite. Setelah upgrade, homebrew tampaknya rusak.

Saya akan menjalankan perintah minuman dan mendapatkan kesalahan ini

/usr/local/bin/brew: /usr/local/Library/brew.rb: /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby: bad interpreter: No such file or directory
/usr/local/bin/brew: line 26: /usr/local/Library/brew.rb: Undefined error: 0

Bagaimana mengatasinya?


Saya baru saja memutakhirkan dari Mac OS X 10.8 ke 10.10 (Yosemite), dan homebrew berfungsi dengan baik setelah peningkatan. Entah masalah ini sudah diperbaiki, atau ada sesuatu yang berbeda tentang peningkatan OS saya dibandingkan dengan semua orang yang memposting di sini.
Yitz

Jawaban:


239

Saya memutuskan untuk mencari ini dan menemukan ada masalah . Masalahnya sudah ditutup tetapi tidak mungkin dijalankan brew updatekarena Anda masih akan mendapatkan kesalahan yang sama.

Jadi, inilah yang perlu Anda lakukan:

cd /usr/local/Library
git pull origin master

Jika Anda memiliki perubahan pada direktori (/ usr / local / Library), tarikan git akan menimbulkan kesalahan. Dalam hal ini, Anda harus mengambil cabang master dan mengaturnya secara paksa sebagai master:

git fetch --all
git reset --hard origin/master

Ini akan meningkatkan versi homebrew Anda dan Anda dapat menggunakan lagi.

Jika Anda menginstal Homebrew sebagai user non-root, Anda harus cdke /Users/yourusername/homebrew/Librarybukannya /usr/local/Library.


20
Belum alasan lain saya suka memiliki paket manager yang dibangun di atas git :)
spinlock

3
Persis. Cinta perangkat lunak yang hanya berjalan dari sumber dan dapat ditingkatkan melalui tarikan git
Ranjith Ramachandra

7
Aneh, saya mendapatkan ini fatal: Bukan repositori git (atau direktori induk): .git
Gabriel R.

2
Saya mendapatkan kesalahan ini:error: cannot open .git/FETCH_HEAD: Permission denied
sixty4bit

6
Cobasudo git pull origin master
Ranjith Ramachandra

48

Saya menemukan solusi ini :

Tautan itu menggambarkannya dengan baik, tetapi jika tautnya turun, inilah yang perlu Anda lakukan: Ketikkan perintah-perintah ini ke Terminal Anda:

cd /System/Library/Frameworks/Ruby.framework/Versions
sudo ln -s Current 1.8
brew update
sudo rm 1.8

2
Berbeda dengan jawaban yang diterima, ini benar-benar berhasil.
Paul

Ini adalah satu-satunya hal yang bekerja untuk saya pada 10.10.3
pengguna

Juga berfungsi untuk 10.10.4
Ralfonso

Batalkan Kesalahan: Kegagalan saat mengeksekusi: git pull -q asal referensi / kepala / master: ref / remote / asal / master
itsazzad

Ini berhasil bagi saya, meskipun ada juga langkah lain yang harus diambil: stackoverflow.com/questions/26501126/…
JussiR

22

Versi dan lokasi Ruby berubah dengan versi Mac OS X yang baru.

Untuk memperbaikinya dengan cara yang umum, edit /usr/local/Library/brew.rb.

Di baris pertama, ganti 1.8dengan Current, yaitu dari:

#!/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby -W0 

untuk:

#!/System/Library/Frameworks/Ruby.framework/Versions/Current/usr/bin/ruby -W0

Ini rusak brew updatekarena Anda sekarang memiliki perubahan yang tidak dikomit.
Cameron Price-Austin

1
... tetapi untuk melakukan brew updateitu harus menerapkan perbaikan yang saya sarankan. Saya tidak pernah menggunakan brew updatesampai sekarang, jadi saya bahkan tidak memiliki repo diinisialisasi. Tidak ingat bagaimana saya menginstalnya.
Gabriel R.

3

Jika Anda memperbaiki masalah ruby ​​dan kemudian menabrak masalah di mana Anda diberitahu bahwa sistem berpikir Anda menjalankan harimau atau rilis yang lebih tua, perbaikan untuk itu ada di sini


1

Saya pertama kali mencoba jawaban berperingkat tertinggi dan kemudian mengenai masalah lain . Setelah itu saya menyerah untuk memperbaikinya karena saya baru saja menginstal beberapa paket. Mungkin orang lain ada di kapal ini juga.

Walaupun ini semua adalah jawaban yang sangat baik, bagi saya lebih mudah hanya menginstal ulang minuman.

Pertama, saya menjalankan instruksi pada:

http://brew.sh/

yang mengarahkan saya untuk menghapus instalasi pertama, dan mencetak baris perintah. Saya menjalankan baris perintah itu untuk menghapus instalasi, lalu menginstal ulang, dan semuanya baik-baik saja.

Saya tidak ingin mencetak perintah khusus, karena mereka cenderung berubah sedikit saat pembuatan menyesuaikan bagaimana hal-hal diinstal.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.