git子模块更新时出错--init

git子模块更新时出错--init,git,git-submodules,Git,Git Submodules,我有一个带有几个git子模块的主存储库 最近我遇到了一个我无法解决的新错误: fatal: Could not switch to '~/git': No such file or directory Clone of '~/git/MyModule_A.git' into submodule path '.modman/MyModule_A' failed 我在做什么 首先,我像往常一样克隆主repo:git clone/path/to/the/bare/repo.git src 然后,我运

我有一个带有几个
git子模块的主存储库

最近我遇到了一个我无法解决的新错误:

fatal: Could not switch to '~/git': No such file or directory
Clone of '~/git/MyModule_A.git' into submodule path '.modman/MyModule_A' failed
我在做什么 首先,我像往常一样克隆主repo:
git clone/path/to/the/bare/repo.git src

然后,我运行
git submodule update--init
,它会正确注册所有子模块,并将它们添加到
.git/config

Submodule '.modman/MyModule_A' (~/git/MyModule_A.git) registered for path '.modman/MyModule_A'
Submodule '.modman/MyModule_B' (~/git/MyModule_B.git) registered for path '.modman/MyModule_B'
Submodule '.modman/MyModule_C' (~/git/MyModule_C.git) registered for path '.modman/MyModule_C'
fatal: Could not switch to '~/git': No such file or directory
Clone of '~/git/MyModule_A.git' into submodule path '.modman/MyModule_A' failed
到目前为止我都试过了
  • .gitmodules
    中删除
    MyModule\u A
    子模块,但错误会继续出现在
    MyModule\u B
    MyModule\u B
    等中
  • 手动将
    ~/git/MyModule_A.git
    克隆到repo之外的另一个文件夹中,该文件夹工作正常
  • 正在检查似乎正确的文件权限
  • 检查
    .gitmodules
    中的条目是否存在错误的路径、URL或任何语法问题(情况并非如此)
      问题在于子模块中的
      ~
      。Git不知道这代表
      /home/


      如果用绝对路径替换它(在
      .gitmodules
      ),一切都会正常工作。

      真的吗?该死我马上就去试试。效果很好!谢谢!