长话短说,我正在寻找的是能够仅获取本地存储库中的特定分支,即使该存储库最初不是用“--single-branch -branch <branch_name>”克隆的.
分享完整的故事 - 我们想使用浅克隆来减少一般的 git 运行时间,特别是在我们的自定义 CI 工具中。另外我应该声明我们使用 Android 的“repo”工具。
据我了解,我们首先需要使用 Android 的“repo”工具支持的 --depth=1 克隆 git 存储库,但这对于我们的 CI 工具来说还不够,它需要加深获取以便能够从用户的存储库中提取更新时,有一个共同的 git 历史记录。因此,当我们尝试加深 fetch(为简单起见 - “git fetch --deepen=1”)时,git 会获取所有分支和标签,并花费大量运行时间这样做,尽管我们只需要加深 fetch 一次非常具体的分支。
如果 git 存储库最初是使用“--single-branch -branch”(除了--depth=1)克隆的,然后“git fetch --deepen=1”运行速度超快,则可以解决此问题。但问题是,Android 的“repo”工具似乎不支持使用“--single-branch -branch”克隆 git repos,因此我的问题在顶部。或者,如果有另一种方法可以加深对特定分支的获取 - 我很高兴知道细节。
谢谢!