Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
移动包含子模块的git存储库的父目录_Git - Fatal编程技术网

移动包含子模块的git存储库的父目录

移动包含子模块的git存储库的父目录,git,Git,我已经克隆了一个用于PatchBasedInpaintingDevelop的存储库。我在那里工作了一段时间,没有任何问题。然后我决定在本地重命名该文件夹。我做了“mv PatchBasedInpainting development PatchBasedInpainting”,现在git状态抱怨子模块,说: doriad@daviddesktop:/media/portable/Projects/PatchBasedInpainting$ git status fatal: Not a git

我已经克隆了一个用于PatchBasedInpaintingDevelop的存储库。我在那里工作了一段时间,没有任何问题。然后我决定在本地重命名该文件夹。我做了“mv PatchBasedInpainting development PatchBasedInpainting”,现在git状态抱怨子模块,说:

doriad@daviddesktop:/media/portable/Projects/PatchBasedInpainting$ git status
fatal: Not a git repository: /media/portable/Projects/PatchBasedInpaintingDevelop/.git/modules/ITKQtHelpers
有没有一种方法可以在不破坏子模块结构的情况下执行此移动?

您的文件似乎使用绝对路径引用子模块

尝试使用所述子模块的相对路径。
(如图所示,例如,在“”中)

子模块..路径
定义相对于git工作树的顶级目录的路径,子模块将在其中签出。
路径名不能以
/
结尾
.gitmodules
文件中的所有子模块路径必须唯一


唯一的另一种解决方案是修复所有绝对路径(如中所示)

唯一具有完整路径的是submodule/.git/modules/SubModName/config,在“工作树”行:./.git/modules/ITKQtHelpers/config:worktree=/media/portable/Projects/patchbasedinpaintingdeveloper/ITKQtHelpersI还发现SubModName/.git有一个gitdir:line:ITKQtHelpers/.git:gitdir:/media/portable/Projects/patchbasedinpaintingdeveloper/.git/modules/ITKQtHelpers@DavidDoria如何在中声明这些子模块
.gitmodules
文件?[子模块“ITKQtHelpers”]path=ITKQtHelpers url=../ITKQtHelpers.git
submodule.<name>.path