【发布时间】:2021-02-15 06:07:25
【问题描述】:
如何在 bash 脚本中检查当前 homebrew-core 和 homebrew-cask 是否是浅克隆,如果是,则将它们取消浅化?如果它们已经不浅,我也想打印一条消息。
在已经非浅层的克隆上运行 git -C "/usr/local/Homebrew/Library/Taps/homebrew/homebrew-cask" fetch --unshallow 只会给出错误消息,而不是优雅的处理。
我试过了
if [[ "git rev-parse --is-shallow-repository /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core" == "false" ]]
then
echo "homebrew core is already non shallow. Moving to next step."
else
git -C "/usr/local/Homebrew/Library/Taps/homebrew/homebrew-core" fetch --unshallow
fi
但是得到了
fatal: --unshallow on a complete repository does not make sense
【问题讨论】:
-
“而不是优雅处理” 那么在脚本中添加优雅处理?
-
@matt:这就是他想要做的。我不确定为什么这被否决(可能有重复,但如果是这样,那应该只要求关闭重复)。
-
@torek 是的,不知道这个投票发生了什么(OP 甚至给出了答案,而 那个 被否决了)。