如何在Git中打包所有松散的物体?

时间:2012-09-09 12:45:13

标签: git

我有一个带有一些松散物体的裸git存储库。如何在不更换其他包装的情况下将所有松散的物品装入单个新包装中?

3 个答案:

答案 0 :(得分:3)

git pack-objects < object_list.txt

其中object_list.txt有一个对象哈希列表,由'\ n'分隔。

git-pack-objects

答案 1 :(得分:0)

我能想出来:

$ git prune-packed
$ find objects/?? -type f | perl -pe 's@^objects/(..)/@$1@' |
  git pack-objects objects/pack/pack
$ git prune-packed

有什么更简单的吗?

答案 2 :(得分:0)

使用git prune-packed时的警告。

在Git 2.22(2019年第一季度)之前,“ git prune-packed”没有注意到并抱怨过高 从命令行给出的参数,现在可以了。

请参见commit 9b0bd87Ramsay Jones (jeffhostetler)(2019年2月11日)。
(由Junio C Hamano -- gitster --commit ebf846c中合并,2019年3月7日)

如果将任何参数传递给too many arguments,它现在将显示“ git prune-packed”。