Git 2.37 正式发布,支持修剪不可达对象、稀疏索引可广泛使用
Git 2.37 已正式发布。 主要变化 新增用于修剪不可达对象 (unreachable object) 的机制 新增适用于 Windows 和 macOS 的内置文件系统监视器 稀疏索引 (sparse index) 已可以广泛使用 修剪不可达对象 在 Git 中,对象可被分类为“可达”和“不可达”。当至少有一个引用(分支或标签)时,一个对象是“可达的”,你可以从该引用开始一个对象遍历(从提交遍历到其父级,从树遍历到其子树,等等),然后在目的地结束。类似地,当不存在这样的引用时,一个对象是“不可达”的。 Git 2.37 引入了一个新概念cruft packs,它允许将“不可达”对象一起存储在单个包文件中,方法是将各个对象的 age 写入存储在包旁边的*.mtimes文件的辅助表中。 在实践中,它们可以允许仓库以更长的宽限期来进行修剪,而不必担心创建许多松散对象的可能性。通过运行下方命令进行尝试: $ git gc --cruft --prune=1.day.ago 内置文件系统监视器 工作目录大小是显著影响 Git 性能的其中一个因素, 例如,当你运行git status.g...