在 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 多个提交。感兴趣的读者可以从发布说明中查看完整的列表。

余下全文(1/3)

本文最初发表在infoq,文章内容属作者个人观点,不代表本站立场。

分享这篇文章:

请关注我们:

发表评论

邮箱地址不会被公开。 必填项已用*标注