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

时间:2015-01-29 21:35:03

标签: macos git homebrew

我几个小时都在苦苦挣扎。我在使用Yosemite的Mac上。我安装了自制软件,并且使用git就好了。我尝试$git add -i,我收到了这个错误:

  

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

所以我按照这里的说明操作: Can't locate Git.pm in @INC

$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'
%

我只想得到自制& git恢复正常并再次链接到正确的仓库。我对这个东西的边缘非常粗糙,所以任何帮助都会非常感激!

3 个答案:

答案 0 :(得分:52)

让另一个强制删除git的酿造版本

brew uninstall --force git

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

brew cleanup --force -s git

删除所有死亡的符号链接

brew prune

然后尝试重新安装git

brew install git

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

使用脚本

答案 1 :(得分:2)

Os X Mojave 10.14具有:

  

错误:命令行工具标头包必须安装在   莫哈韦沙漠。

解决方案。转到

  

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

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

brew uninstall --force git
brew cleanup --force -s git
brew prune
brew install git

答案 2 :(得分:1)

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

运行命令时:

  

$ brew install lua

命令返回错误:

  

错误:/ usr / local / opt / lua不是有效的小桶
  (通常错误可能是/ usr / local / opt /不是有效的小桶

通过删除其引用的文件/目录(即删除“ / usr / local / opt / lua”文件)来修复该问题。

  

root-user#rm -rf / usr / local / opt / lua

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