Jak bezpiecznie naprawić i / lub ponownie zainstalować Homebrew?

14

Próbuję naprawić Homebrew.

Ostatnio próbowałem go ponownie zainstalować, ale kiedy napisałem „brew doctor”

Moje wyniki to:

shell-init: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
chdir: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
chdir: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
The current working directory doesn't exist, cannot proceed.

Próbowałem ponownie zainstalować, wpisując to ponownie w wierszu polecenia:

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Ale mój wynik to:

It appears Homebrew is already installed. If your intent is to reinstall you
should do the following before running this installer again:
rm -rf /usr/local/Cellar /usr/local/.git && brew cleanup

Jak mogę naprawić instalację Homebrew?

AndrewMRiv
źródło
3
Dlaczego nie czytasz swoich wyników? Wyjaśni to całkiem dobrze.
jherran
Na dzień dzisiejszy mam ten sam problem opisany w oryginalnym poście. Mam wrażenie, że zaczęło się to zaraz po aktualizacji OS X do wersji 10.11.2 za pośrednictwem App Store. Bez względu na to, jakie parametry są przekazywane do parzenia, czy to „lekarz”, „czyszczenie” itp., Wszystkie wytwarzają tę samą wydajność. Dlatego też nie można przestrzegać instrukcji „czyszczenia naparu”. Czy może to być spowodowane SIP OS X? Czy ktoś ma jakieś inne pomysły?
Axel Kirch,
Witamy w Zapytaj inaczej. są dwie opcje - możesz zadać pytanie dotyczące wyników rm polecenia lub możemy głosować / promować to za pomocą edycji. Również - możesz zapytać - skąd mam wiedzieć, czy SIP wpływa na określone zadanie. to jest możliwe i wydaje się być nieco poza zakresem tego pytania, więc chętnie odpowiem na to pytanie w innym miejscu. Odpowiedź jest prawie na pewno „nie” w przypadku homebrew.
bmike

Odpowiedzi:

17

Dlaczego nie zrobisz tego, co mówi?

rm -rf /usr/local/Cellar /usr/local/.git && brew cleanup
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Pierwszy wiersz całkowicie usuwa homebrew, a następnie powinieneś być w stanie go ponownie zainstalować.

UWAGA: Jeśli to zrobisz, będziesz musiał ponownie zainstalować wszystkie rzeczy, które zainstalowałeś przez homebrew.

Gabriel Littman
źródło
Dziękuję Ci. Z jakiegoś powodu, kiedy zrobiłem „brew install php54 --with-fpm --with-imap --with-apache --with-debug”, to dawało mi pierwszy błąd wyjścia z mojego postu. Kiedy próbowałem użyć „ruby -e” $ (curl -fsSL raw.githubusercontent.com/Homebrew/install/master/install ) ”„ dał mi drugi błąd wyjściowy. Ponowne uruchomienie komputera i robienie tego, co mi kazałeś, naprawdę pomogło. Dziękuję Ci!
AndrewMRiv,
Jeśli używasz rvm, to kończy się niepowodzeniem z błędem ruby ​​„brak obrazu”; upewnij się, że używasz sys ruby:/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
tutuDajuju
16

Stało się tak, ponieważ miałem dwie karty otwarte w konsoli. W Konsoli AI usunąłem bieżący katalog roboczy Konsoli B. Następnie, nie zastanawiając się nad tym, uruchomiłem brew upgradeKonsolę B. Oczywiście wyrzuciłem powyższy błąd.

Proste rozwiązanie: tylko cddo innego katalogu w konsoli B i brew upgradeponownie.

Ja i moja nieskończona mądrość.

RobertAKARobin
źródło
2
to jest poprawna odpowiedź.
Tamas Kalman
1
O, moje słowo - być może będę musiał ponownie zainstalować wszystko w trakcie przygotowywania, zanim zaczniesz cd-cd do innego katalogu. Tak, to powinna być poprawna odpowiedź.
DanSingerman
0

Jeśli w instalacji Homebrew zainstalowałeś również narzędzia XCode na swoim Macu, może być konieczne zamknięcie okna terminala i otwarcie nowego :)

Colton Hicks
źródło