Windows上的git子模块克隆没有创建目标文件夹

时间:2016-07-15 15:01:06

标签: git git-submodules

在工作中,我们设置了一个repo appdevx,它有一个带子模块的项目。当我在OSX(git --version - > git version 2.8.1)上运行此命令时,一切都按预期工作,我的所有目录都已填充,生命是宏伟的。

git clone --recursive ssh://git@bb/appdevx/orb.git x

当我在Windows上使用git bash(git --version - > git version 2.9.0.windows.1)运行相同的命令时,它似乎按预期下载了所有模块并将它们放在.git文件夹中(我没有'确认这一点,但它有很长的已发现的子模块等)然后它按字母顺序写入第一个文件夹(由于某种原因不是在初始克隆上创建)而失败,因为它无法找到目标路径。如果我创建路径(注意套管),它会删除文件夹然后失败,因为目标路径不存在。

我做错了什么?

要添加到此,因为我安装了SourceTree(使用系统git,而不是嵌入式),我让它在存储库上进行更新,并在那里工作。

1 个答案:

答案 0 :(得分:0)

所以,像往常一样,太半聪明了,再次咬我的屁股。

您可能已经注意到,在上面我使用主机的git配置快捷方式,允许我在URL中引用bb而不是bitbucket.internal.etc。

子模块在存储库路径中具有完整的服务器名称,因此git无法找到要使用的正确密钥,因此在尝试验证会话时失败。

我添加了一个重复的配置条目,并提供了完整的服务器名称作为昵称和瞧,修复。