{"id":13830,"date":"2015-04-21T06:42:38","date_gmt":"2015-04-21T06:42:38","guid":{"rendered":"https:\/\/blogs.msdn.microsoft.com\/bharry\/2015\/04\/21\/tfvc-git-support\/"},"modified":"2019-02-16T22:46:43","modified_gmt":"2019-02-16T22:46:43","slug":"tfvc-git-support","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/bharry\/tfvc-git-support\/","title":{"rendered":"TFVC &#038; Git support"},"content":{"rendered":"<p>I got a question on a blog post about differences in TFVC and Git support in TFS and VS Online.&nbsp; Here&rsquo;s a link to the question for context: <a title=\"http:\/\/blogs.msdn.com\/b\/bharry\/archive\/2015\/03\/12\/the-future-of-team-foundation-version-control.aspx#10608301\" href=\"http:\/\/blogs.msdn.com\/b\/bharry\/archive\/2015\/03\/12\/the-future-of-team-foundation-version-control.aspx#10608301\">http:\/\/blogs.msdn.com\/b\/bharry\/archive\/2015\/03\/12\/the-future-of-team-foundation-version-control.aspx#10608301<\/a>\nI can&rsquo;t answer in a comment with reasonable formatting so I&rsquo;ll answer in a post.\nOne thing you can check out is an MSDN topic on the subject here: <a title=\"https:\/\/msdn.microsoft.com\/en-us\/library\/ms181368.aspx\" href=\"https:\/\/msdn.microsoft.com\/en-us\/library\/ms181368.aspx\">https:\/\/msdn.microsoft.com\/en-us\/library\/ms181368.aspx<\/a>.&nbsp; There&rsquo;s some useful information there but I feel like that page is trying to do too many things at once &ndash; explain some of the feature differences between a distributed version control system and a centralized one, etc.&nbsp; But it you really are looking holistically at how to choose, there are a lot of factors to consider.&nbsp; The page is also a little out of date with respect to feature availability.&nbsp; We&rsquo;re working on an update to the page to improve it.\nBut I decided to quickly jot an answer here that I think is in the spirit of the question.&nbsp; The question, as I read it, is about comparative feature support.&nbsp; My first reaction to the question is that creating a list of differences is both very short and very misleading &ndash; because the vast majority, at this point, is common across the two.&nbsp; The question, of course, is where to draw the line.&nbsp; I could write a 10 page document if I had the time and wanted to try to cover everything I can think of.&nbsp; So I&rsquo;ve focused on what I think are some of the top features in VSO\/TFS and highlighted what support we have in each and the differences.&nbsp; I&rsquo;m sure I&rsquo;ve missed some big things.&nbsp; It was a 15 minute exercise.<\/p>\n<table cellspacing=\"0\" cellpadding=\"0\" border=\"1\">\n<tbody>\n<tr>\n<td valign=\"top\" width=\"191\">         <b>Feature<\/b><\/p>\n<\/td>\n<td valign=\"top\" width=\"46\">\n<p><b>TFVC<\/b><\/p>\n<\/td>\n<td valign=\"top\" width=\"32\">\n<p><b>Git<\/b><\/p>\n<\/td>\n<td valign=\"top\" width=\"354\">\n<p><b>Comments<\/b><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"191\">\n<p><b>Alerts<\/b><\/p>\n<\/td>\n<td valign=\"top\" width=\"46\">\n<p>Y<\/p>\n<\/td>\n<td valign=\"top\" width=\"32\">\n<p>Y<\/p>\n<\/td>\n<td valign=\"top\" width=\"354\">&nbsp;<\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"191\">\n<p><b>Android Studio integration<\/b><\/p>\n<\/td>\n<td valign=\"top\" width=\"46\">\n<p>N<\/p>\n<\/td>\n<td valign=\"top\" width=\"32\">\n<p>Y<\/p>\n<\/td>\n<td valign=\"top\" width=\"354\">&nbsp;<\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"191\">\n<p><b>Build support<\/b><\/p>\n<\/td>\n<td valign=\"top\" width=\"46\">\n<p>Y<\/p>\n<\/td>\n<td valign=\"top\" width=\"32\">\n<p>Y<\/p>\n<\/td>\n<td valign=\"top\" width=\"354\">\n<p>Both Xaml builds &amp; Build v.next. We also have support for both for Jenkins<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"191\">\n<p><b>CodeLens<\/b><\/p>\n<\/td>\n<td valign=\"top\" width=\"46\">\n<p>Y<\/p>\n<\/td>\n<td valign=\"top\" width=\"32\">\n<p>Y<\/p>\n<\/td>\n<td valign=\"top\" width=\"354\">\n<p>Some differences. Git works offline. TFVC has a couple more indicators &ndash; like incoming changes.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"191\">\n<p><b>Code review<\/b><\/p>\n<\/td>\n<td valign=\"top\" width=\"46\">\n<p>Y<\/p>\n<\/td>\n<td valign=\"top\" width=\"32\">\n<p>Y<\/p>\n<\/td>\n<td valign=\"top\" width=\"354\">\n<p>TFVC has &ldquo;in IDE&rdquo; code review. Git has web based pull requests. Later this year the two will be converged and have web and IDE experiences for both<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"191\">\n<p><b>Code search<\/b><\/p>\n<\/td>\n<td valign=\"top\" width=\"46\">\n<p>N<\/p>\n<\/td>\n<td valign=\"top\" width=\"32\">\n<p>Y<\/p>\n<\/td>\n<td valign=\"top\" width=\"354\">\n<p>Code search is in private preview and currently only has Git support. We&rsquo;ll be adding TFVC support this summer.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"191\">\n<p><b>Cross platform command line<\/b><\/p>\n<\/td>\n<td valign=\"top\" width=\"46\">\n<p>Y<\/p>\n<\/td>\n<td valign=\"top\" width=\"32\">\n<p>Y<\/p>\n<\/td>\n<td valign=\"top\" width=\"354\">&nbsp;<\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"191\">\n<p><b>Data warehouse<\/b><\/p>\n<\/td>\n<td valign=\"top\" width=\"46\">\n<p>Y<\/p>\n<\/td>\n<td valign=\"top\" width=\"32\">\n<p>N<\/p>\n<\/td>\n<td valign=\"top\" width=\"354\">\n<p>TFVC exposes some warehouse data like code churn. Git does not. Stay tuned for some announcements in this area.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"191\">\n<p><b>Eclipse Integration<\/b><\/p>\n<\/td>\n<td valign=\"top\" width=\"46\">\n<p>Y<\/p>\n<\/td>\n<td valign=\"top\" width=\"32\">\n<p>Y<\/p>\n<\/td>\n<td valign=\"top\" width=\"354\">&nbsp;<\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"191\">\n<p><b>Gated checkin<\/b><\/p>\n<\/td>\n<td valign=\"top\" width=\"46\">\n<p>Y<\/p>\n<\/td>\n<td valign=\"top\" width=\"32\">\n<p>N<\/p>\n<\/td>\n<td valign=\"top\" width=\"354\">\n<p>Will have a Git equivalent this summer<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"191\">\n<p><b>High availability\/DR<\/b><\/p>\n<\/td>\n<td valign=\"top\" width=\"46\">\n<p>Y<\/p>\n<\/td>\n<td valign=\"top\" width=\"32\">\n<p>Y<\/p>\n<\/td>\n<td valign=\"top\" width=\"354\">&nbsp;<\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"191\">\n<p><b>Welcome pages<\/b><\/p>\n<\/td>\n<td valign=\"top\" width=\"46\">\n<p>Y<\/p>\n<\/td>\n<td valign=\"top\" width=\"32\">\n<p>Y<\/p>\n<\/td>\n<td valign=\"top\" width=\"354\">&nbsp;<\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"191\">\n<p><b>Work item linking<\/b><\/p>\n<\/td>\n<td valign=\"top\" width=\"46\">\n<p>Y<\/p>\n<\/td>\n<td valign=\"top\" width=\"32\">\n<p>Y<\/p>\n<\/td>\n<td valign=\"top\" width=\"354\">\n<p>Some small differences. TFVC can resolve workitems with checkins, Git can&rsquo;t. Git can #reference work items in commit comments, TFVC can&rsquo;t. We&rsquo;ll get parity later this year.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"191\">\n<p><b>VS integration<\/b><\/p>\n<\/td>\n<td valign=\"top\" width=\"46\">\n<p>Y<\/p>\n<\/td>\n<td valign=\"top\" width=\"32\">\n<p>Y<\/p>\n<\/td>\n<td valign=\"top\" width=\"354\">\n<p>TFVC support is a little ahead with Source Control Explorer, a little better Team Explorer integration, Merge visualization, etc.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"191\">\n<p><b>XCode integration<\/b><\/p>\n<\/td>\n<td valign=\"top\" width=\"46\">\n<p>N<\/p>\n<\/td>\n<td valign=\"top\" width=\"32\">\n<p>Y<\/p>\n<\/td>\n<td valign=\"top\" width=\"354\">&nbsp;<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>&nbsp;\nI hope it&rsquo;s helpful.<\/p>\n<p>Brian<\/p>\n","protected":false},"excerpt":{"rendered":"<p>I got a question on a blog post about differences in TFVC and Git support in TFS and VS Online.&nbsp; Here&rsquo;s a link to the question for context: http:\/\/blogs.msdn.com\/b\/bharry\/archive\/2015\/03\/12\/the-future-of-team-foundation-version-control.aspx#10608301 I can&rsquo;t answer in a comment with reasonable formatting so I&rsquo;ll answer in a post. One thing you can check out is an MSDN topic on [&hellip;]<\/p>\n","protected":false},"author":244,"featured_media":14617,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[1],"tags":[5,8],"class_list":["post-13830","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-uncategorized","tag-tfs","tag-vsonline"],"acf":[],"blog_post_summary":"<p>I got a question on a blog post about differences in TFVC and Git support in TFS and VS Online.&nbsp; Here&rsquo;s a link to the question for context: http:\/\/blogs.msdn.com\/b\/bharry\/archive\/2015\/03\/12\/the-future-of-team-foundation-version-control.aspx#10608301 I can&rsquo;t answer in a comment with reasonable formatting so I&rsquo;ll answer in a post. One thing you can check out is an MSDN topic on [&hellip;]<\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/bharry\/wp-json\/wp\/v2\/posts\/13830","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devblogs.microsoft.com\/bharry\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devblogs.microsoft.com\/bharry\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/bharry\/wp-json\/wp\/v2\/users\/244"}],"replies":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/bharry\/wp-json\/wp\/v2\/comments?post=13830"}],"version-history":[{"count":0,"href":"https:\/\/devblogs.microsoft.com\/bharry\/wp-json\/wp\/v2\/posts\/13830\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/bharry\/wp-json\/wp\/v2\/media\/14617"}],"wp:attachment":[{"href":"https:\/\/devblogs.microsoft.com\/bharry\/wp-json\/wp\/v2\/media?parent=13830"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/bharry\/wp-json\/wp\/v2\/categories?post=13830"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/bharry\/wp-json\/wp\/v2\/tags?post=13830"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}