Commit together with co-authors

.. it’s easy to see why more developers than ever are writing code collaboratively.

.. Commit co-authors makes it easy to see who has contributed to every commit, regardless of how many contributors there are—and every author gets attribution in the pull request and in their contribution graph.

How it works

To add co-authors to a commit, just add one or more “Co-authored-by” trailers to the end of the commit message:

<span style="color: #444444;">Commit message</span>

<span style="color: #444444;">Co-authored-by: Joel Califa <602352+califa@users.noreply.github.com></span>
<span style="color: #444444;">Co-authored-by: Matt Clark <44023+mclark@users.noreply.github.com>
</span>

Include your trailers at the end of your commit message, and have at least one line of white space before them.

Microsoft and GitHub team up to take Git virtual file system to macOS, Linux

Microsoft wanted to move to Git because of Git’s features, like its easy branching and its popularity among developers. But the transition faced three problems. Git wasn’t designed for such vast numbers of developers—more than 3,000 actively working on the codebase. Also, Git wasn’t designed for a codebase that was so large, either in terms of the number of files and version history for each file, or in terms of sheer size, coming in at more than 300GB. When using standard Git, working with the source repository was unacceptably slow. Common operations (such as checking which files have been modified) would take multiple minutes.

The company’s solution was to develop Git Virtual File System (GVFS). With GVFS, a local replica of a Git repository is virtualized such that it contains metadata and only the source code files that have been explicitly retrieved. By eliminating the need to replicate every file (and, hence, check every file for modifications), both the disk footprint of the repository and the speed of working with it were greatly improved. Microsoft modified Git to handle this virtual file system. The client was altered so that it didn’t needlessly try to access files that weren’t available locally and a new transfer protocol was added for selectively retrieving individual files from a remote repository.

.. The biggest complexity is that Git has a very conservative approach to compatibility, requiring that repositories remain compatible across versions.

.. GitHub’s interest and involvement is motivated by the company’s desire to address the needs of enterprise customers

.. Certain industries have large repositories that pose problems with Git; for example, game repositories are often physically large not because they have millions of files and decades of history, but because of their large number of graphics and other assets. The scaling improvements that Microsoft has made to Git are useful for this kind of large repository, too. As such, having the same family of improvements available in GitHub will enable the company to better serve these communities.