我一直试图从Copier制作的模板渲染项目,其中包含一个子模块converter
,但遇到了以下问题:
Submodule 'converter' (/template_path/converter.git) registered for path 'converter'
fatal: repository '/template_path/converter.git' does not exist
fatal: clone of '/template_path/converter.git' into submodule path '/tmp/copier.vcs.clone.4y5n3ykb/converter' failed
其中/template_path/
表示到具有模板的本地存储库的路径。
我复制了一个带有模板的本地版本的仓库到另一个本地目录,并使用以下命令更新子模块:git submodule update --checkout --init --recursive --force
,这正是Copier所称的。
原始和克隆repos中的.gitmodules
文件均包含以下路径和url:
[submodule "converter"]
path = converter
url = ../converter.git
原始本地存储库中的Config
文件包含converter
子模块远程存储库的有效url,但在克隆的存储库中,它具有本地路径/template_path/converter.git
。
我该怎么补救呢?
1条答案
按热度按时间ckocjqey1#
url = ../converter.git
意味着与当前项目存储库一起克隆的bare repositoryconverter.git
。如果您没有本地克隆该仓库(裸),那么您需要更新子模块仓库URL(using
git submodule set-url
),以便引用外部(非本地)仓库(来自GitHub、GitLab或任何其他公共仓库托管服务)。