0

为了准备提交,我 git add file f 两次,仅在提交的第二个版本中使用它。我可以从 .git/objects 中删除 f 的第 1 版吗?.git/objects 是否包含我的 git 添加的“无用”副本,即使中间版本从未提交过?我该怎么做一些清理工作?

4

1 回答 1

3

git gc将自动运行“一些命令”,但它也说:

鼓励用户在每个存储库中定期运行此任务,以保持良好的磁盘空间利用率和良好的运行性能。

--prune默认情况下,git gc 将修剪 2 周前无法访问的对象,但您可以使用该选项覆盖该持续时间。

要专门仅删除无法访问的对象,您可以使用git prune。从它的笔记:

在大多数情况下,用户不需要直接调用 git prune,而应该调用 git gc 来处理修剪以及许多其他内务处理任务。

有关考虑修剪哪些对象的描述,请参阅 git fsck 的--unreachable选项。

于 2013-05-06T14:56:09.267 回答