为删除的引用保留 reflog

keep reflog for deleted references

在我的 git 存储库的本地克隆中,删除(或重命名)引用时,旧名称所附的引用日志也会被删除。

我找不到说明 "keep log for deleted references" 的选项。

问题

有没有办法保留已删除引用的 reflog 文件?

清理和 gc 仍然可以遵循 reflog 条目、无法访问的对象等参数...

据我所知,git 没有提供执行此操作的方法。我不知道其中的道理;在通常的保留期内保留分支的 reflog 当然会很好,但不知道 reflog 过期通常如何工作的具体细节我不能说是否有充分的理由说明这太困难了。 (或者如果创建一个同名的新分支可能会出现问题?)

无论出于何种原因,文档都指定日志已删除 (https://git-scm.com/docs/git-branch),并且未指示任何更改行为的方法。我想您可以手动复制 reflog 文件 (.git/logs/refs/...) 来保留信息,但这肯定不是一种用户友好的方法。

实际上,您基本上只能使用 HEAD reflog 中偶然出现的任何条目。所以,我想如果你不确定你不再需要更详细的分支历史记录,请不要删除它。