问题描述
我有几个星期没有使用终端了,在运行“Brew Upgrade”来升级/更新我的所有软件包后,我开始看到“致命:拒绝将 HEAD 指向 refs/ 之外的每个命令”。我不太熟悉终端或 Git,所以我不知道这意味着什么,请提供一些建议/场景,说明为什么会发生这种情况。
解决方法
我敢打赌,您使用的是 fish
shell,并在您运行 brew upgrade
时升级到了 3.3.0 版。
我还敢打赌,您有一个自定义提示,运行带有使用抑扬符变音符号 (^
) 进行错误重定向的命令。这不再是有效的语法:
默认情况下已禁用使用 ^ 字符重定向到标准错误。它可以使用 stderr-nocaret 功能标志重新打开,但最终将被完全禁用 (#7105)。
解决方案是将配置中用于错误重定向的所有 ^
替换为 2>
。
例如:
git symbolic-ref HEAD ^/dev/null
变成
git symbolic-ref HEAD 2>/dev/null
全部归功于 Njke 上的 this GitHub issue。