自制/核心是鱼壳中的浅表克隆

时间:2019-03-04 04:43:26

标签: homebrew fish

我尝试使用brew install安装某些东西,然后弹出

Warning: homebrew/core is shallow clone. To get complete history run:
  git -C "$(brew --repo homebrew/core)" fetch --unshallow

当我复制该东西使其运行时,会发生这种情况

fish: $(...) is not supported. In fish, please use '(brew)'.
git -C "$(brew --repo homebrew/core)" fetch --unshallow
        ^

这是什么意思,我该如何解决?有没有忽略或修复的解决方法?

有关我的工作站的其他信息:

  • MacOS Mojave
  • 自制软件版本2.0.2
  • 运行brew doctor并显示没有问题
  • 使用鱼壳(我当然可以)

更新1: 看来我是个白痴,将$留在了那里。 我确实尝试根据你们的建议修复它,然后发生了这种情况。

像这样从命令中删除$

git -C "(brew --repo homebrew/core)" fetch --unshallow

发生这种情况

fatal: cannot change to '(brew --repo homebrew/core)': No such file or directory

更新2: 另外,@ VonC要求我运行以下行,以问我brew --repo homebrew/core路径是否存在

brew --repo homebrew/core

就这样了

/usr/local/Homebrew/Library/Taps/homebrew/homebrew-core

表示存储库路径仍然有效并且可以使用

2 个答案:

答案 0 :(得分:2)

fish-shell/issue 1405

中所述
  

在bash中,$(...)等同于反引号,但在双引号字符串中受支持。
  Fish不使用$(...)backticks,而是使用(...)

所以:

git -C (brew --repo homebrew/core) fetch --unshallow

Issue 159讨论了对$()命令替换语法的支持。
自2012年以来。

fatal: cannot change to '(brew --repo homebrew/core)': No such file or directory

然后再次检查brew --repo homebrew/core返回的内容以及该路径是否存在。

或者,seen here

git -C $HOMEBREW_CORE fetch --unshallow

How to remove the shallow clone warning from HomeBrewglenn-jackman开始,""应该受支持,但不建议使用comment

  

“浅克隆”的最简单解释是,它只是git存储库的一个克隆,没有修订历史记录,从而减少了git repo占用空间。您还可以指定“深度”以减少从git克隆获得的修订历史记录的数量。

对于您而言,如果您需要完整的历史记录,则需要fetch --unshallow

答案 1 :(得分:0)

好像我做了两次double。
感谢所有对我的评论,我正在做些子。非常感谢。

代替打字

git -C "$(brew --repo homebrew/core)" fetch --unshallow

哪条鱼不太喜欢该行中的$

  

改用它:

git -C (brew --repo homebrew/core) fetch --unshallow
     

$"
  AAAAND就是这样。

如果这没有帮助,请发表评论。我仍然怀疑是真的解决了这个问题,还是不能解决