Comment réparer et / ou réinstaller Homebrew en toute sécurité?

14

J'essaie de réparer Homebrew.

J'ai récemment essayé de le réinstaller mais quand j'ai tapé "brew doctor"

Ma sortie était:

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.

J'ai essayé de le réinstaller en tapant à nouveau ceci dans la ligne de commande:

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

Mais ma sortie est:

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

Comment puis-je réparer mon installation Homebrew?

AndrewMRiv
la source
3
Pourquoi ne lisez-vous pas votre sortie? Cela expliquera assez bien.
jherran
À ce jour, j'ai le même problème décrit dans le message d'origine. J'ai le sentiment que cela a commencé juste après la mise à niveau d'OS X vers 10.11.2 via l'App Store. Peu importe les paramètres qui sont passés au brassage, que ce soit «docteur», «nettoyage», etc., tous produisent le même résultat. Au moins, l'instruction "nettoyage de l'infusion" ne peut donc pas être suivie. Cela peut-il être dû au SIP d'OS X? Quelqu'un a-t-il d'autres idées?
Axel Kirch
Bienvenue sur Ask Different. il y a deux options - vous pouvez poser une question de suivi montrant les résultats de la rm commande ou nous pouvons voter / promouvoir cela avec des modifications. Aussi - vous pourriez demander - comment puis-je savoir si SIP affecte une tâche spécifique. qui est responsable et semble un peu au-delà de la portée de cette question, donc je serai heureux de répondre à cela pour vous ailleurs. La réponse est presque sûrement «non» dans le cas des homebrews.
bmike

Réponses:

17

Pourquoi tu ne fais pas ce que ça dit?

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

La première ligne va supprimer complètement l'homebrew et vous devriez pouvoir le réinstaller.

REMARQUE: Si vous faites cela, vous devrez réinstaller toutes les choses que vous avez installées via homebrew.

Gabriel Littman
la source
Je vous remercie. Pour une raison quelconque, lorsque j'ai "installé brew php54 --with-fpm --with-imap --without-apache --with-debug", cela me donnait la première erreur de sortie de mon message. Lorsque j'ai essayé d'utiliser "ruby -e" $ (curl -fsSL raw.githubusercontent.com/Homebrew/install/master/install ) "", cela m'a donné la deuxième erreur de sortie. Redémarrer mon ordinateur et faire ce que vous m'avez dit de faire m'a vraiment aidé. Je vous remercie!
AndrewMRiv
Si vous utilisez rvm, il échoue avec une erreur de rubis "image introuvable"; assurez-vous d'utiliser sys ruby:/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
tutuDajuju
16

Cela m'est arrivé parce que j'avais deux onglets ouverts dans ma console. Dans la console AI, j'ai supprimé le répertoire de travail actuel de la console B. Puis, sans y penser, j'ai couru brew upgradedans la console B. Bien sûr, cela a provoqué l'erreur ci-dessus.

Solution simple: juste cdvers un répertoire différent dans la console B et brew upgradeencore.

Moi et ma sagesse infinie.

RobertAKARobin
la source
2
c'est la bonne réponse.
Tamas Kalman le
1
Oh ma parole - peut-être avoir à réinstaller tout sous brew avant de cd-ing dans un répertoire différent. Oui, cela devrait être la bonne réponse.
DanSingerman
0

Si dans votre installation homebrew vous avez également installé les outils XCode sur votre Mac, vous devrez peut-être simplement fermer la fenêtre de votre terminal et en ouvrir une nouvelle :)

Colton Hicks
la source