Git 2.6 lands with enhanced commands
The open-source, distributed version control system Git has had itself a major release. Git 2.6 brings dozens of new features and bugfixes, which comes as a relief to a number of users reporting bugs from previous versions.
Git 2.6 has officially landed and is sizeable, to say the least. The new features for this major release relate primarily to extensions and the elimination of numerous bugs that were reported to the development team from the plethora of users in the community. However, a lot of new features have appeared too.
Users can now apply an asterisk as a substring of a path component for both sides of a refspec (e.g. refs/heads/o*:refs/remotes/heads/i*). In addition, a new userdiff pattern definition has been implemented and the command
git log now plays nice with
--date=format:... to format timestamps.
Communication from the command
drop commit-object-name subject to
git rebase -i is another option available so that punters can skip the replay of commits. And thanks to a new configuration variables option,
--follow can now be activated automatically when
git log is executed via a single pathspec argument.
Apart from the features listed above, version 2.6 also gives the
--batch-all-objects command to
git cat-file for quicker enumeration of all available objects in the repository. The command
git fsck will in future ignore errors on a set of objects that have already been flagged as bad.
A configurable todo list for
git rebase -i, the support of alias expansion for the
git send-email command, as well as an update to the command-line completion script are likewise highlighted amongst the improvements.
The performance of the system also received some attention:
In preparation for allowing different “backends” to store the refs in a way different from the traditional “one ref per file in $GIT_DIR or in a $GIT_DIR/packed-refs file” filesystem storage, direct filesystem access to ref-like things like CHERRY_PICK_HEAD from scripts and programs has been reduced.