没有这样的桶:/ usr/local/Cellar/git

fla*_*ist 32 git macos homebrew

几个小时我一直在努力.我在使用Yosemite的Mac上.我安装了自制软件,并且使用git就好了.我试过了$git add -i,我收到了这个错误:

无法在@INC中找到Git.pm(@INC包含:

所以我按照这里的说明操作: 无法在@INC中找到Git.pm

$brew uninstall git工作得很好,但在我试图$brew install git陷入可怕的循环之后.

% brew install git

Error: git-git already installed
To install this version, first `brew unlink git'
% brew unlink git
Error: No such keg: /usr/local/Cellar/git
% brew link git
Error: No such keg: /usr/local/Cellar/git
% git --version
git version 1.9.3 (Apple Git-50)
% brew upgrade git
==> Upgrading 1 outdated package, with result:
git 2.2.2
Error: /usr/local/Library/LinkedKegs/git is not a valid keg
% brew install git
Error: git-git already installed
To install this version, first `brew unlink git'
%
Run Code Online (Sandbox Code Playgroud)

我只想让homebrew&git恢复正常并再次链接到正确的repo.我真的很粗糙这个东西,所以任何帮助将不胜感激!

小智 59

再去另一个去除git的酿造版本

brew uninstall --force git
Run Code Online (Sandbox Code Playgroud)

然后清除所有旧版本并清除brew缓存

brew cleanup --force -s git
Run Code Online (Sandbox Code Playgroud)

删除所有死的符号链接

brew prune
Run Code Online (Sandbox Code Playgroud)

然后尝试重新安装git

brew install git
Run Code Online (Sandbox Code Playgroud)

如果这不起作用,我将完全删除Homebrew的安装并重新安装它.如果您没有在brew --prefix目录中放置任何其他内容(/usr/local默认情况下),您可以简单地rm -rf $(brew --prefix).否则,Homebrew维基建议使用https://gist.github.com/mxcl/1173223#file-uninstall_homebrew-sh上的脚本

  • `brew cleanup --force`不再存在,只需使用`brew cleanup -s git` (12认同)
  • 如果还没有“ brew prune”,请使用“ brew cleanup --prune-prefix” (9认同)
  • 卸载并重新安装自制软件是让我摆脱困境的唯一原因. (2认同)
  • @MattFlorence 你是如何卸载自制软件的?我到处都说你必须安装 git 才能删除自制软件。 (2认同)

Ole*_*ndr 6

Os X Mojave 10.14 具有:

错误:必须在 Mojave 上安装命令行工具标头包。

解决方案。去

/Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg

位置并手动安装软件包。然后,brew 将开始工作,我们可以运行:

brew uninstall --force git
brew cleanup -s git
brew cleanup --prune-prefix
brew install git
Run Code Online (Sandbox Code Playgroud)

  • `brew prune` 不存在,请使用 `brew cleanup --prune-prefix` (6认同)

Gir*_*iri 5

使用自制软件在 OS X 中安装“Lua”时遇到了类似的问题。我想这对于在自制软件中面临类似问题的其他用户可能很有用。

在运行命令时:

$ brew install lua

命令返回错误:

错误: /usr/local/opt/lua is not a valid keg
(通常错误可能是 /usr/local/opt/ is not a valid keg

通过删除它所指的文件/目录来修复它,即删除“/usr/local/opt/lua”文件。

根用户 # rm -rf /usr/local/opt/lua

然后运行 ​​brew install 命令返回成功。