English ▾ 主题 ▾ 最新版本 ▾ git-prune 上次更新于 2.43.0

名称

git-prune - 从对象数据库中修剪所有不可达的对象

概要

git prune [-n] [-v] [--progress] [--expire <time>] [--] [<head>…​]

描述

注意
在大多数情况下,用户应该运行 git gc,它会调用 git prune。 请参见下面的 "NOTES" 部分。

这将使用 refs/ 中的所有引用运行 git fsck --unreachable,可以选择在命令行上指定一组额外的对象,并从对象数据库中修剪所有从这些头对象无法访问的未打包对象。 此外,它还会通过运行 git prune-packed 来修剪也在包中找到的未打包对象。它还会从 .git/shallow 中删除任何引用都无法访问的条目。

请注意,不可达的打包对象将保留。 如果不希望这样,请参阅 git-repack[1]

选项

-n
--dry-run

不删除任何内容; 只报告它将删除的内容。

-v
--verbose

报告所有已删除的对象。

--progress

显示进度。

--expire <时间>

仅过期早于 <时间> 的松散对象。

--

不要将任何其他参数解释为选项。

<head>…​

除了可以从我们的任何引用访问的对象之外,还保留可以从列出的 <head> 访问的对象。

示例

修剪你的存储库或另一个通过其 .git/objects/info/alternates 从你的存储库借用的存储库未使用的对象

$ git prune $(cd ../another && git rev-parse --all)

注释

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

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

GIT

属于 git[1] 套件的一部分

scroll-to-top