gpt4 book ai didi

git - 如何在保持深度为 1 的同时在标签中初始化子模块

转载 作者:太空狗 更新时间:2023-10-29 12:55:16 27 4
gpt4 key购买 nike

对于普通的 git 仓库,你可以这样做:

git clone --branch 4.1.1 https://github.com/WordPress/WordPress.git . --depth 1

这将在标记 4.1.1 处提供 WP 存储库

对于一个子模块,我确实得到了下面的信息,但我不知道如何只为一个标签做这件事。

git submodule add --depth 1  https://github.com/WordPress/WordPress.git wp

如何在1 层 将子模块 check out 到1 个标签

我不介意之后再执行几个命令,但如果可能的话,一个命令就更好了。

TLDR:我想要一个标签处的子模块。 .git(/module) 文件夹越小越好。

最佳答案

考虑到一个子模块可能不带有它的标签,您可能会想先做(如“Can git submodule update be made to fetch tags in submodules?”中所建议的):

git submodule foreach --recursive 'git fetch --tags'

但正如我在“Does “git fetch --tags” include “git fetch”?”中所解释的,那将获取标签,但所有相关的提交(自 git 1.9.0,2014 年 2 月起)

相反,您可以进入子模块,并获取深度为 1 的标签内容:

git fetch --depth=1 origin refs/tags/<tag>:refs/tags/<tag>
git checkout <tag>

关于git - 如何在保持深度为 1 的同时在标签中初始化子模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29211711/

27 4 0