Wie kann ich Homebrew sicher reparieren und/oder neu installieren?

Ich versuche Homebrew zu reparieren.

Ich habe kürzlich versucht, es neu zu installieren, aber als ich "Brew Doctor" eingegeben habe

Meine Ausgabe war:

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.

Ich habe versucht, es neu zu installieren, indem ich dies erneut in die Befehlszeile eingebe:

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

Aber meine Ausgabe ist:

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

Wie kann ich meine Homebrew-Installation reparieren?

Warum liest du deine Ausgabe nicht? Es wird ziemlich gut erklären.
Seit heute habe ich das gleiche Problem wie im Originalpost beschrieben. Ich habe das Gefühl, dass dies direkt nach dem Upgrade von OS X auf 10.11.2 über den App Store begann. Egal welche Parameter an brew übergeben werden, sei es 'doctor', 'cleanup' etc., alle erzeugen die gleiche Ausgabe. Zumindest die Anweisung „Brühreinigung“ kann daher nicht befolgt werden. Kann dies durch das SIP von OS X verursacht worden sein? Hat jemand noch andere Ideen?
Willkommen bei Ask Different. Es gibt zwei Möglichkeiten - Sie könnten eine Follow-on-Frage stellen, die die Ergebnisse des rm Befehls zeigt, oder wir können dies mit Änderungen abstimmen / fördern. Sie könnten auch fragen, wie ich feststellen kann, ob SIP eine bestimmte Aufgabe betrifft. Das ist beantwortbar und scheint den Rahmen dieser Frage ein wenig zu sprengen, also beantworte ich das gerne an anderer Stelle für Sie. Die Antwort ist im Fall von Homebrew mit ziemlicher Sicherheit "nein".

Antworten (4)

Warum tust du nicht, was es sagt?

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

Die erste Zeile wird Homebrew vollständig löschen und dann sollten Sie in der Lage sein, es neu zu installieren.

HINWEIS: Wenn Sie dies tun, müssen Sie alle Dinge neu installieren, die Sie über Homebrew installiert haben.

Danke dir. Aus irgendeinem Grund, als ich "brew install php54 --with-fpm --with-imap --without-apache --with-debug" machte, gab es mir den ersten Ausgabefehler von meinem Beitrag. Als ich versuchte, "ruby -e "$(curl -fsSL raw.githubusercontent.com/Homebrew/install/master/install )"" zu verwenden, gab es mir den zweiten Ausgabefehler. Es hat wirklich geholfen, meinen Computer neu zu starten und das zu tun, was Sie mir gesagt haben. Danke dir!
Wenn Sie rvm verwenden, schlägt dies mit einem "Bild nicht gefunden"-Ruby-Fehler fehl; Stellen Sie sicher, dass Sie sys ruby ​​verwenden:/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
12 Stunden arbeiten. In diesem Fehler habe ich nur das vollständige Entfernen von Homebrew gelöst. Vielen Dank!
Das Ruby-Installationsprogramm ist veraltet, verwenden Sie es /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"stattdessen
Git Repo-Speicherort wurde jetzt geändert. es sollte seinrm -rf /usr/local/Homebrew/.git

Das ist mir passiert, weil ich zwei Tabs in meiner Konsole geöffnet hatte. In Console AI entfernte ich das aktuelle Arbeitsverzeichnis von Console B. Dann, ohne darüber nachzudenken, lief ich brew upgradein Console B. Natürlich warf es den obigen Fehler.

Einfache Lösung: einfach cdin ein anderes Verzeichnis in Konsole B und brew upgradewieder.

Ich und meine unendliche Weisheit.

das ist die richtige antwort.
Oh mein Gott - möglicherweise müssen Sie alles unter Brew neu installieren, bevor Sie in ein anderes Verzeichnis cd-en. Ja, das sollte die richtige Antwort sein.
Ich habe dieses Verhalten reproduziert, indem ich versucht habe, es brew doctoraus einem entfernten Verzeichnis auszuführen. mit cdin ein neues Verzeichnis wechseln, das brew doctorwieder funktionieren darf. Das Ändern Ihres Verzeichnisses ist definitiv die richtige Antwort.
Du bist ein Gott unter den Insekten. Es könnte buchstäblich 10 Stunden dauern, bis ich alles in Brew, das ich verwende, neu installiert habe -.-

Ich bin auch auf den ersten Fehler gestoßen. Es verschwand, nachdem ich meine Shell beendet hatte, mit der ich Homebrew installiert hatte. Danach waren die Braukommandos wieder glücklich.

Wenn Sie in Ihrer Homebrew-Installation auch XCode-Tools auf Ihrem Mac installiert haben, müssen Sie möglicherweise nur Ihr Terminalfenster schließen und ein neues öffnen :)