主要观点:开源 Git 项目发布了 Git 2.45,有 96 多位贡献者参与,其中 38 位是新贡献者。本文介绍了 Git 2.45 的一些有趣特性和变化,包括初步的 reftable 支持、SHA-1 和 SHA-256 互操作性的初步支持等。
关键信息:
- Git 2.45 引入 reftable 支持,可更高效存储引用,有近常量时间查找等优势,最初由 Shawn Pearce 为 JGit 设计,现已集成到 Git 通用引用后端系统。
- 引入 SHA-1 和 SHA-256 互操作性的初步支持,通过“兼容性”对象格式实现,仍为实验性。
- Git 2.45 解决了使用
git rev-list
调试缺失对象时的问题,新增git reflog list
命令,可配置diff.srcPrefix
和diff.dstPrefix
,允许自定义core.commentString
,git config
新增--comment
选项,git cherry-pick
新增--empty
选项。
重要细节: - 初始化新仓库使用
--ref-format=reftable
,reftable 可存储多个*.ref
文件,支持单独处理引用更新事务。 - 在 SHA-256 模式下初始化仓库并设置兼容性哈希函数,可查看不同哈希算法下的对象 ID。
git rev-list --missing=print --all
可调试缺失对象,git reflog list
显示有 reflog 的引用,diff.srcPrefix
和diff.dstPrefix
可配置 diff 输出的前缀,core.commentString
可自定义提交消息模板,git config --comment
可在配置行末尾添加注释,git cherry-pick --empty
可指定处理空提交的行为。
总结:Git 2.45 带来多项改进,对 Git 的存储和操作功能有重要提升,更多细节可查看相关 release notes 或 Git 仓库。作者是 GitHub 的 Staff Software Engineer Taylor Blau。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。