Git is a distributed version control system, so by default each Git repository has a copy of all files in the entire history. Even moderately-sized teams can create thousands of commits adding hundreds of megabytes to the repository every month. As your repository grows,
In a previous blog series, we announced that Git has a new commit-graph feature, and described some future directions. Since then, the commit-graph feature has grown and evolved. In the recently released Git version 2.24.0, the commit-graph is enabled by default!
Coding is a team sport. To help developers be more efficient, we are excited to announce the new Azure Repos app for Microsoft Teams
Understanding the way Git defines Δfile changes and merge conflicts in pull requests.
A deep dive into using the new Git Trace2 feature to study Git performance problems on very large repos.
One of the more powerful git commands is the cherry-pick command. This can be an extremely powerful component of many git workflows such as the Azure DevOps team's Release Flow. To highlight a common use-case for it, let’s talk about hot-fixing release branches.
In previous posts I’ve talked about performance improvements that our team contributed to the Git community. At Microsoft, we’ve been pushing Git to its limits with the largest and busiest Git repositories on the planet, improving core Git as we go and sending these improvements back upstream.
Today, the Git project has announced a security vulnerability: there is a security issue in recursively cloning submodules that can lead to arbitrary code execution. The Azure DevOps team encourages you to examine whether you are on an affected platform and, if so, upgrade your Git clients to the latest version.
We’ve been discussing the commit-graph feature in Git 2.18 and how we can use generation numbers to accelerate commit walks. One area where we can get significant speedup is when presenting output in topological order. This allows us to walk a much smaller list of commits than before.
Earlier, we announced that Git 2.18 contains a new commit-graph feature, and we discussed the commit-graph file format. As shipped in Git 2.18, this file only speeds up commit walks by a constant multiple, due to parsing structured data from the commit-graph file.