Git 2.7: 一个新的带来许多新特性和性能提升的主要版本

  • Sergio De Simone
  • 谢丽

2016 年 1 月 29 日

话题:Git语言 & 开发

在 2.6 版本发布两个月之后,Git 2.7 发布。该版本带来了许多新特性以及性能的提升。

本文选取了 Git 2.7 带来的主要变化:

  • git remote支持get-url子命令,可以显示指定远端的 URL。
  • git rebase新增了一个命令行选项--no-autostash,可以覆盖配置变量rebase.autostash
  • git worktree支持list子命令,可以显示代码库的工作树及相关的分支。工作树是Git

    2.5
    初次引入的一个特性,旨在使在同一个代码库的多个分支上工作更简单。
  • git bisect在并发用于多个工作树时也可以很好地工作了。此外,该命令现在支持oldnew子命令,与之前的badgood子命令相比,不那么令用户迷惑了。bisect查找那些产生了不良影响而又难以确定的状态变化时非常有用。它使开发人员可以标识good/old提交以及bad/new提交,这样,就可以对那些提交进行二叉搜索,查找造成破坏的提交。
  • git submodule支持一个新的配置选项push.recurseSubmodules,帮助开发人员将变更推送到主模块,而不需要提前推送修改过的子模块。使用命令行选项--recurse-submodules=on-demand也可以获得同样的效果,但新增的push.recurseSubmodules选项将此设为默认行为。
  • git stash支持一个新的配置选项stash.showPatch,使它总是显示实际的修改,而不是受影响的文件的路径列表。在 Git 2.6 中,这一动作可以通过在命令行中使用-p标识实现。
  • 在性能方面,Git 2.7 使用 C 重写了git submodule

Git 2.7 还包含许多其他的变更,其中包括 800 多个提交。感兴趣的读者可以从发布说明中查看完整的列表。

查看英文原文:Git 2.7: a Major New Release with Many New Features and Improvements

Git语言 & 开发