Git:如何仅克隆Git存储库的子目录?

尼克·谢尔盖特

我有我的Git存储库,它的根目录有两个子目录:

/finisht
/static

SVN中时/finisht在一个地方/static签出,而在其他地方签出,就像这样:

svn co svn+ssh://[email protected]/home/admin/repos/finisht/static static

有没有办法用Git做到这一点?

约格午间

编辑:从Git 2.19开始,这最终是可能的,如该答案所示

考虑提高答案。

注意:在Git 2.19中,仅实现了客户端支持,仍然缺少服务器端支持,因此仅在克隆本地存储库时有效。还要注意,大型GitHub托管者(例如GitHub)实际上并不使用Git服务器,而是使用自己的实现,因此,即使在Git服务器中显示了支持,也不意味着它会自动在Git托管者上运行。(OTOH,由于他们不使用Git服务器,因此可以在自己的实现中更快地实现它,然后再将其显示在Git服务器中。)


不,这在Git中是不可能的。

在Git中实现这样的工作将是一项巨大的工作,这将意味着不再能够保证客户端存储库的完整性。如果您有兴趣,请在git邮件列表上搜索有关“稀疏克隆”和“稀疏访存”的讨论。

通常,Git社区的共识是,如果您有几个始终独立检出的目录,则它们实际上是两个不同的项目,应该位于两个不同的存储库中。您可以使用Git子模块将它们重新粘合在一起

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何仅克隆Git存储库的子目录?

克隆git repo的子树/子目录

如何将Git存储库历史记录重播到子目录中?

Git:如何将子目录推送到同一存储库的单独分支

Git:克隆后缺少子目录

如何git reset --hard子目录?

如何同步git repo的子目录?

当我可能在子目录中时,如何查找本地git存储库的路径

将git存储库中的现有子目录转换为嵌套的sub-git存储库

将子目录分离(移动)到单独的Git存储库中

尝试使用Fabric将git存储库检出到子目录

Git / Github将子目录重定向到其他存储库

git将子目录与另一个存储库合并

如何仅将模块下载到存储库子目录中的软件包?

如何将现有的嵌套存储库(已在子目录中签出)添加到父Git存储库作为子模块?

Git钩子目录

获取.git目录而不克隆存储库

Jenkins仅在构建Git存储库的子目录时显示整个存储库的更改-为什么?

镜像SVN子目录中的git子目录

Git-服务器根目录中的克隆子目录

Git unignore 被忽略目录的子目录

如何使用pip从git子目录安装?

如何从git仓库中的子目录安装Bower组件?

如何在Git的子目录中包含排除文件?

如何使git LFS不适用于子目录

当我在本地存储库中只有项目的子目录时,是否可以启动Git?

如何克隆,获取或稀疏检出git存储库中的单个目录或目录列表?

如何从Docker容器克隆Git存储库

如何克隆GIT存储库列表?