git 自特定提交以来的浅克隆
git shallow clone since specific commit
我想克隆一个历史悠久的存储库。我只对一些短暂的尚未合并的功能分支和 master
.
感兴趣
为了不让自己与所有过去的历史和合并的分支混淆,我想从特定的提交 SHA 开始做一个浅克隆。
但是,到目前为止,我只找到了关于如何进行浅层克隆的文档,这些克隆仅包括最后的 n
提交(--depth
) resp,自特定日期以来的提交(--shallow-since
).
有没有办法指定从给定提交开始的浅克隆?
没有,这有点遗憾,因为 Git 很容易实现。
通常使用 --depth
就足够了:从您认为足够的深度开始,如果不够,请根据需要使用 --deepen
或 --depth
重复获取。
在该特殊提交处创建一个分支然后 git clone --single-branch
怎么样?
仍然不可能,但是如果我们知道我们想要创建浅克隆的提交的日期时间,我们可以使用 git --shallow-since=<date>
,例如,如果我们知道提交 X 被推送到“2021-12- 19T20:37:05Z",我们可以:
git clone --shallow-since="2021-12-19T20:37:05Z" <url>
只会提供来自提交 X
的历史记录
我想克隆一个历史悠久的存储库。我只对一些短暂的尚未合并的功能分支和 master
.
为了不让自己与所有过去的历史和合并的分支混淆,我想从特定的提交 SHA 开始做一个浅克隆。
但是,到目前为止,我只找到了关于如何进行浅层克隆的文档,这些克隆仅包括最后的 n
提交(--depth
) resp,自特定日期以来的提交(--shallow-since
).
有没有办法指定从给定提交开始的浅克隆?
没有,这有点遗憾,因为 Git 很容易实现。
通常使用 --depth
就足够了:从您认为足够的深度开始,如果不够,请根据需要使用 --deepen
或 --depth
重复获取。
在该特殊提交处创建一个分支然后 git clone --single-branch
怎么样?
仍然不可能,但是如果我们知道我们想要创建浅克隆的提交的日期时间,我们可以使用 git --shallow-since=<date>
,例如,如果我们知道提交 X 被推送到“2021-12- 19T20:37:05Z",我们可以:
git clone --shallow-since="2021-12-19T20:37:05Z" <url>
只会提供来自提交 X
的历史记录