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.
Earlier, we announced the commit-graph feature in Git 2.18 and talked about some of its performance benefits. Today, we’ll discuss some if the technical details about how the commit-graph feature works, including some helpful properties of its file format. This file speeds up commit-graph walks so much that we were able to identify other ways to speed up these walks using small optimizations.
Have you ever run gitk and waited a few seconds before the window appears? Have you struggled to visualize your commit history into a sane order of contributions instead of a stream of parallel work? Have you ever run a force-push and waited seconds for Git to give any output?
I’m excited to share the new navigation we’re working on for Visual Studio Team Services (VSTS) to modernize the user experience and give you more flexibility. As Lori mentioned in her blog post, our goal to create an integrated suite that also gives the flexibly to pick and choose the services that work best for you.