What’s new in Git for Windows 2.8?

Download Git for Windows from its home page.

Authentication is now a breeze

More and more Git hosting sites support multi-factor authentication or security tokens. With the inclusion of the Git Credential Manager, Git for Windows now offers a user-friendly way to support such authentication methods. Git for Windows closely follows Git Credential Manager’s release cycle, allowing you to benefit from new features added to Git Credential Manager.

Better support for line endings

Git was born on Linux, and it shows in many places. One example are line endings: On Linux, the lines in a text file typically end with a single byte (Line Feed, encoded as #10) while on Windows, the lines normally end in two bytes: Carriage Return (ASCII-encoded as #13) followed by Line Feed. As of version 2.8, Git’s commands have been taught to consistently interpreted the Carriage Return byte as part of the line endings. For example, files fed to git grep -f can now contain Windows’ native line endings.

Git is available from every command-line by default

Git for Windows installs a Git Bash command into the Start Menu, and by default the git.exe command was only available in the Git Bash. Most Windows users are not familiar with that shell, therefore the default changed to adding Git to the PATH, making it available not only to the Windows command-line, but to all third-party programs that want to call the Git executable.

Many commands are faster by default

For more than two years, Git for Windows shipped with an experimental option (“FSCache”) that speeds up many commands that query the file system. This option has withstood the test of time and is now enabled by default.

Other improvements

Git for Windows is the Windows port of Git, and therefore inherits all the improvements of that software. For example, it is now easier to diagnose problems with line endings by using the git ls-files --eol option. And if you have a lot of untracked files in your working directory, you can speed up many Git commands by setting the config variable core.untrackedCache=true. Also, when a merge fails and inserts conflict markers, the inserted line endings now match the surrounding text’s.

Git v2.8.0 also marks the first time Git’s source code can be built in MSYS2 (the collection of POSIX tools on which Git for Windows relies) without patches.

Our friends at GitHub blogged about some other highlights of Git v2.8.0. The full list of improvements in Git v2.8.0 is detailed in the official announcement.

Future plans

Leading up to Git v2.8.0, Windows-specific patches from the Windows port were integrated into Git proper. This was just the start; Many more patches are just waiting to be integrated, still.

The Git for Windows project is working hard to make using Git faster and easier. Stay tuned!

Download Git for Windows from its home page.