如何仅克隆git子模块

如何仅克隆git子模块,git,jenkins,git-submodules,git-clone,Git,Jenkins,Git Submodules,Git Clone,有没有一种方法可以从在子模块中选择提交的服务器获取信息,而无需克隆整个存储库? 目标是只克隆指定的子模块“jenkins config”,因此我们需要URL(我们已经知道这一点)和提交 用例: 我们希望使用Jenkins作业配置,该配置指定如何处理管道中签出的源。因为我们不知道配置了什么,我们首先只想克隆配置,处理它,然后检查整个存储库(例如,在正确的节点上) 我们真的希望将配置放在要构建的存储库的源旁边。这就是为什么我们想到使用“配置子模块”来包括和指定有效配置(有效配置由子模块的SHA指定)

有没有一种方法可以从在子模块中选择提交的服务器获取信息,而无需克隆整个存储库? 目标是只克隆指定的子模块“jenkins config”,因此我们需要URL(我们已经知道这一点)和提交

用例: 我们希望使用Jenkins作业配置,该配置指定如何处理管道中签出的源。因为我们不知道配置了什么,我们首先只想克隆配置,处理它,然后检查整个存储库(例如,在正确的节点上)

我们真的希望将配置放在要构建的存储库的源旁边。这就是为什么我们想到使用“配置子模块”来包括和指定有效配置(有效配置由子模块的SHA指定)。
这样还可以为您的分支选择特定的配置。另外,使用配置存储库中的不同分支来维护不同存储库的配置也会非常方便(拉式更改)

有什么办法解决这个问题吗? -在源旁边的沙箱中配置
-仅签出config(不包括存储库的其余部分)

.gitmodules
中,您可以获得子模块的git引用


要获取提交SHA,请使用
git子模块状态
,这将打印每个子模块当前签出提交的SHA-1。

在.gitsubmodules中,您可以获取子模块的git引用。只需将它克隆为一个普通的存储库,这正是我计划要做的——将子模块克隆为普通的repo。我的问题是:如何从主存储库获取子模块commit SHA而不必克隆它。我只能在克隆并签出整个存储库后才能执行此操作。我的问题是:如何从主存储库获取子模块commit SHA而不必克隆它。您可以使用
git clone--depth仅克隆最后一次提交1