对于普通的 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/