如何在不将整个存储库放在git/objects/pack中的情况下进行git稀疏签出

  • 本文关键字:git 情况下 pack objects 存储 git
  • 更新时间 :
  • 英文 :


我们的.git/objects/pack目录很大,我希望使用尽可能少的磁盘空间进行稀疏签出。

是否可以进行稀疏的签出并避免拥有此目录及其所有内容?

你的问题写起来没有多大意义。你说的是对象包文件的大小很大(这是存储库历史记录很大的情况),但你说的却是稀疏签出——这与工作目录空间有关,而与存储库空间无关。您可以拥有大量的存储库对象,但只有一个很小的工作目录。

已经提供的git clone --depth答案涵盖了存储库。

如果你真的想在结账操作中做一些愚蠢的事情,我会尝试以下三个命令

git read-tree --reset
git read-tree HEAD:<path to folder you are interested in>
git checkout-index 

这应该只为您的工作目录中提供一个目录。但是,您将无法进行(有用的)提交,您必须手动创建树对象并手动创建提交。

git clone—深度

注意:浅克隆不能用于推送任何东西,因为你会得到快进错误

相关内容

最新更新