Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ


Choose your language

InfoQ Homepage News Git 2.7: a Major New Release with Many New Features and Improvements

Git 2.7: a Major New Release with Many New Features and Improvements

Leia em Português

This item in japanese

Lire ce contenu en français

Two months after the release of version 2.6, Git 2.7 has been announced, bringing many new features as well as performance improvements.

Here is a selection of the major changes that Git 2.7 includes:

  • git remote supports a get-url subcommand that will show the URL for a given remote.
  • git rebase added a new command line option, --no-autostash, that will override the rebase.autostash configuration variable.
  • git worktree supports a list subcommand to display a repository’s worktree and their associated branches. Worktrees are a feature firstly included in Git 2.5 to make it easier to work on multiple branches of the same repository.
  • git bisect has been made to work nicely when used concurrently on multiple worktrees. Additionally, the command now supports old and new subcommands to make its use less confusing than with the previous bad and good subcommands. bisect is useful when hunting for a hard to identify state change that produced some undesired effect. It allows developers to mark a good/old commit and a bad/new commit so a binary search can be carried through those commits looking for the one that broke things.
  • git submodule supports a new configuration option, push.recurseSubmodules to help developers pushing changes to the main module without previously pushing their changed submodules. The same effect could be obtained by using the --recurse-submodules=on-demand option on the command line, but the new push.recurseSubmodules can make that behaviour be the default.
  • git stash supports a new configuration option, stash.showPatch, to make it always show the actual patch instead of a list of paths affected files. This behaviour could be obtained in Git 2.6 by using the -p flag on the command line.
  • On the performance front, progress has been made to rewrite git submodule in C.

Git 2.7 includes many more changes, including 800+ commits. You can read the full list in the release notes.

Rate this Article