正如答案https://stackoverflow.com/a/32025729所暗示的,我已使用
配置了远程裸仓库git config gc.pruneExpire never
git config gc.reflogExpire never
因此,即使我没有为所有这些提交发明永久的分支名称或标签,我也始终保留所有分支和标签的所有存储提交。
但是,从长远来看,这将导致以下警告:
warning: There are too many unreachable loose objects; run 'git prune' to remove them.
这是由于以下事实造成的:我想永远保留的悬空提交始终存储为松散对象。
是否有一种让git包含仅由reflog故意在包文件中引用的悬挂提交的好方法?这将使性能保持较高水平并且不会丢失未命名的历史记录。
我知道我可以通过将gc.auto
设置为某个很高的数字来解决该警告,但从长远来看,这将导致(次要的)性能问题。