Git 2.56 源代码控制发布

分布式源代码管理系统 Git 2.56 已发布。Git 采用 GPLv2+ 许可证。与之前的版本相比,新版本包含了 104 位开发者贡献的 748 项更改,其中 39 位是 Git 开发的新人。主要新特性(1、2、3):

  • 新增了“git add --resolved”模式,用于在合并分支时解决冲突。此模式会检查文件中的冲突标记,如果至少在一个文件中检测到标记,则会返回错误,不会索引任何文件,并显示需要修正的文件列表。与“git add --update”命令不同,此新模式仅处理处于冲突状态的文件,而忽略与冲突无关的已更改文件。即使工作目录中存在其他未完成的编辑(“git add --update”命令会将工作目录中所有先前跟踪的已更改文件添加到索引中),此模式也能安全地完成分支合并。
  • 通过优化合并分支和比较提交时查找最近共同提交的算法,处理大型代码库的速度得到了显著提升。现在,该过程只考虑属于同一分支的提交,因此在找到所有可能的共同祖先后即可立即停止扫描,无需浪费时间进一步遍历变更历史。在一个测试代码库中,搜索速度平均提升了 20 倍,而在另一个代码库中,速度提升高达 70 倍。在内核版本为 4.8 的代码库中运行命令“git merge-base --all v4.8 v4.9”时,速度得到了显著提升。 Linux 遍历步骤数从 167 万步减少到 3.8 步。
  • “--path-walk”重新打包模式已针对服务器端进行了优化,允许通过按目录树中的路径对对象进行分组来创建更紧凑的打包文件(例如,对于 Fluent UI 代码库,使用“--path-walk”将打包文件大小从 558 MB 减少到 164 MB)。新版本支持将“--path-walk”模式与可达性位图和增量岛结合使用,Git 托管服务利用这些功能来加快工作速度并将分支与主代码库隔离。
  • 针对大型仓库中导致冗余计算的瓶颈问题,我们进行了优化:移除了写入引用表时不必要的文件状态检查;消除了每次插入新包文件时重新扫描列表的操作;加速了包含大量删除记录的引用表操作;优化了指定文件路径限制时 git diff 的性能。经过这些优化,包含大量删除记录的引用表操作速度提升了 65 倍(从 13 秒缩短至 0.2 秒),并且在索引包含 500000 万个条目的 Chromium 仓库中,原本耗时 8 分钟的 git diff 命令现在只需 0.07 秒即可完成。
  • 实验性的“git history”命令(能够重写更改历史记录)已更新,新增了“git history drop”操作,用于删除选定的提交并自动将其后代附加到父提交。
  • 新增了 `git branch --delete-merged 'origin/*' 'topic-*'` 命令,用于安全地删除已提交到外部仓库的本地分支组。可以使用通配符来筛选分支和仓库。`--dry-run` 标志可用于分析待删除分支,而无需实际执行删除操作。
  • 添加了“git refs create|update|delete|rename”命令,该命令结合了创建、删除、重命名和更新引用的底层操作。
  • “git bisect run”命令现在有了“--reset-when-found=[”选项]”,它会自动将存储库恢复到搜索开始之前的状态,或者保持有问题的提交处于活动状态,而无需单独运行“git bisect reset”命令。
  • 现在,'git replay' 命令有一个 '--linearize' 标志,用于使用扁平合并拓扑,类似于 'git rebase --no-rebase-merges',但不访问工作树。
  • 现在,“git log --follow”命令可以跟踪非线性提交历史中的文件重命名,例如合并子分支时。文件路径现在会针对每个父提交单独记录,因此结果与遍历提交历史的顺序无关。
  • 新增了使用“git repack -a --filter=blob:limit=1m --drop-filtered”命令移除从外部仓库按需下载但当前索引中未使用的大型数据块的功能。这些对象在将来访问时将自动重新下载。
  • 对于具有多个独立根的图,“git log --graph”命令现在会添加缩进,以清晰地分隔不相关的提交。
  • 常见的拼写错误,例如指定“git push origin/main”而不是“git push origin main”,或者指定“git branch --set-upstream-to origin main”而不是“git branch --set-upstream-to=origin/main”,现在可以检测到,并显示有关如何使用正确变体的提示。

来源: opennet.ru

为具有 DDoS 保护、VPS VDS 服务器的站点购买可靠的主机 🔥 购买具备 DDoS 防护的可靠网站托管服务,包括 VPS 和 VDS 服务器 | ProHoster