{"id":7315,"date":"2018-07-13T02:11:43","date_gmt":"2018-07-12T18:11:43","guid":{"rendered":"https:\/\/blogs.msdn.microsoft.com\/vsnews\/?p=7315"},"modified":"2019-02-18T12:37:48","modified_gmt":"2019-02-18T20:37:48","slug":"aa1v3an","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/vsnews\/akams-aa1v3an\/","title":{"rendered":"Supercharging the Git Commit Graph III: Generations and Graph Algorithms"},"content":{"rendered":"<p><span>Earlier, we announced that Git 2.18 contains\u00a0<\/span><a href=\"https:\/\/blogs.msdn.microsoft.com\/devops\/2018\/06\/25\/supercharging-the-git-commit-graph\/\">a new commit-graph feature<\/a><span>, and we discussed\u00a0<\/span><a href=\"https:\/\/blogs.msdn.microsoft.com\/devops\/?p=44805&amp;preview=true\">the commit-graph file format<\/a><span>. 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. Today, we continue by talking about how we can use the idea of a\u00a0<\/span><em>generation number<\/em><span>\u00a0to greatly reduce the number of commits we walk, giving much greater performance improvements. Many of the topics we discuss today are already\u00a0<\/span><a href=\"https:\/\/github.com\/git\/git\/commit\/3258c66332abaf6e3e8fd81cab07ae804760cd08\">on their way to a future version of Git<\/a><span>\u00a0while others are still part of\u00a0<\/span><a href=\"https:\/\/github.com\/git\/git\/blob\/master\/Documentation\/technical\/commit-graph.txt\">the future plans for the commit-graph feature<\/a><span>.<\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Earlier, we announced that Git 2.18 contains\u00a0a new commit-graph feature, and we discussed\u00a0the 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. Today, we continue by talking about how we can use the idea of a\u00a0generation [&hellip;]<\/p>\n","protected":false},"author":539,"featured_media":8227,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[3,8],"tags":[],"class_list":["post-7315","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-allskus","category-vs4mac"],"acf":[],"blog_post_summary":"<p>Earlier, we announced that Git 2.18 contains\u00a0a new commit-graph feature, and we discussed\u00a0the 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. Today, we continue by talking about how we can use the idea of a\u00a0generation [&hellip;]<\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/vsnews\/wp-json\/wp\/v2\/posts\/7315","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devblogs.microsoft.com\/vsnews\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devblogs.microsoft.com\/vsnews\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/vsnews\/wp-json\/wp\/v2\/users\/539"}],"replies":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/vsnews\/wp-json\/wp\/v2\/comments?post=7315"}],"version-history":[{"count":0,"href":"https:\/\/devblogs.microsoft.com\/vsnews\/wp-json\/wp\/v2\/posts\/7315\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/vsnews\/wp-json\/wp\/v2\/media\/8227"}],"wp:attachment":[{"href":"https:\/\/devblogs.microsoft.com\/vsnews\/wp-json\/wp\/v2\/media?parent=7315"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/vsnews\/wp-json\/wp\/v2\/categories?post=7315"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/vsnews\/wp-json\/wp\/v2\/tags?post=7315"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}