我一直在尝试这个,但没有成功。
我有一个包含 3 个文件夹的 git 存储库。可以说:
文件夹A 文件夹B 文件夹C
例如,我希望能够将文件夹 B 的内容提取到网络服务器。
我只是想以某种方式在 www 文件夹上初始化一个 git 存储库,然后做一些魔法,将文件夹 B 中的文件 pull 到这个特定的文件夹中。
对文件夹 B 进行稀疏 checkout 会在我的 www 文件夹中创建文件夹 B。我只需要它的内容。
这对于 Git 是否可行?
最佳答案
您可以尝试稀疏 checkout 以便仅加载文件夹 B。
git init <repo>
cd <repo>
git remote add -f origin <url>
git config core.sparseCheckout true
echo "Folder/B/" >> .git/info/sparse-checkout
git pull origin master
参见“Is there any way to clone a git repository's sub-directory only?”
由于稀疏 checkout 确实会创建一个文件夹,因此您需要在其他地方 checkout 它,并确保 www
符号链接(symbolic link)到该文件夹。
关于Git 从存储库中提取文件夹的内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30454353/