如何从 git 中稀疏检出子目录而不检出其父目录?

问题描述 投票:0回答:1

我正在尝试从我的 git 存储库中稀疏签出一个子目录。

该存储库包含多个 WordPress 插件,我想一一查看它们。通过下面发布的解决方案,我遇到了这样的问题:每次我签出子目录的父目录时也会签出并且插件无法工作。

我尝试了这样的方法是否可以在不先检查整个存储库的情况下进行稀疏结帐?以及类似的东西用于简单网络部署的Git稀疏结帐.

我真的希望有人可以帮助我,因为我只是觉得我错过了一些信息。

谢谢你。

git subdirectory git-checkout sparse-checkout git-sparse-checkout
1个回答
0
投票

OP 引用了(2016 年)2010 年的问题“是否可以在不首先检查整个存储库的情况下进行稀疏检出?”,现在有一个更新的(2023 年)answer,由 Kirow 使用

git clone --no-checkout --depth=1 --filter=blob:none
.

评论还引用了来自Ciro Santilli的How do I clone a subdirectory only of a Git repository?'s answer,使用

git sparse-checkout set --no-cone

我已经测试了两个答案的组合:

git clone --no-checkout --depth=1 --filter=tree:0 https://github.com/charmbracelet/lipgloss
cd lipgloss
git sparse-checkout set --no-cone "examples/layout/"
git read-tree -m -u HEAD

请注意我在“带有排除的 Git 稀疏结账

”中使用的 
git read-tree -m -u HEAD

© www.soinside.com 2019 - 2024. All rights reserved.