【发布时间】:2021-03-14 09:45:47
【问题描述】:
我只想从 gitlab 中检出一个文件夹,而没有它的父文件夹和层次结构中的其他父文件夹。
我们的 gitlab 存储库结构类似于 hybris/bin/custom/asamp。 asamp 文件夹还有其他文件夹。我只想签出 asamp 文件夹
我一直在尝试此链接上给出的解决方案 - How do I clone a subdirectory only of a Git repository? 但我无法仅下载 asamp 文件夹,它还会下载完整的层次结构,即我可以在本地存储库中看到 hybris/bin/custom/asamp。请注意,当我进行稀疏检出时,不会下载与 asamp 同级的其他文件夹,但会检出我不想要的完整层次结构。我只想下载 asamp 文件夹,而不是其父文件夹。
我正在使用 gitlab。
【问题讨论】:
-
有很多方法可以做到这一点,但到目前为止,最简单的方法是上游维护各个历史记录的分支。切片和切块历史涉及权衡,目前尚不清楚您最有兴趣在这里避免什么痛苦; Git 之所以如此高效,是因为它不会让每个人都为每个人都很少需要的灵活性支付每个操作的开销,而缺点是确实需要它的人有一些工作要做。请详细说明您所处的情况,包括您不想支付的具体费用,然后我可以提供帮助。
-
@jthill 有一个客户使用的 hybris 框架,安装此框架后客户试图从自定义目录中获取项目,例如
asamp直接签出到 hybris 框架的安装目录,这样他们可以快速测试更改并最终推送到 gitlab
标签: git version-control gitlab gitlab-ce sparse-checkout