Git 子树最大函数递归深度

Git subtree maximum function recursion depth

在我的(相当大的)存储库中尝试 git subtree split -P foo/ -b "foo-branch" 命令后,我收到包含以下消息的错误:

/usr/lib/git-core/git-subtree: 647: Maximum function recursion depth (1000) reached

这个命令对我的同事来说工作正常,这让我觉得我的机器配置有问题。我使用的 git 版本是 2.30.2 on Ubuntu 21.04。 根据我的研究,我发现这个函数递归深度在 git 源代码中是硬编码的,但大部分信息都是针对不相关的 Python 递归函数(据我所知,git是用C写的)。

有办法解决这个问题吗? git 函数递归深度是否可以以任何方式被覆盖?

看起来 Ubuntu 21.04 的破折号 shell 是麻烦制造者。

使用 sudo dpkg-reconfigure dash 重新配置并选择“否”后,问题已解决。