{"id":25875,"date":"2016-11-28T12:21:55","date_gmt":"2016-11-28T20:21:55","guid":{"rendered":"https:\/\/blogs.msdn.microsoft.com\/visualstudioalm\/?p=25875"},"modified":"2019-02-14T15:56:01","modified_gmt":"2019-02-14T23:56:01","slug":"getting-the-most-out-of-git","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/devops\/getting-the-most-out-of-git\/","title":{"rendered":"Getting the most out of Git"},"content":{"rendered":"<p><em>Posted on behalf of guest blogger:\u00a0<strong>Tobias G\u00fcnther, CEO <a href=\"https:\/\/www.fournova.com\/\">Fournova<\/a>\u00a0.\u00a0<\/strong><\/em><em><strong><\/strong><a href=\"https:\/\/blogs.msdn.microsoft.com\/visualstudioalm\/2016\/08\/24\/becoming-more-productive-with-git-tower-and-team-services\/\">Git Tower and Team Services<\/a> together provide an awesome\u00a0Git solution for your team, on Mac and (now!) Windows.\u00a0<\/em><\/p>\n<p>\u2014<\/p>\n<p>In the last few years, millions of developers have started to use Git. But just a fraction of them are using it confidently and productively: Git&#8217;s large feature set and its even larger number of parameters and flags make it hard to master.<\/p>\n<p>The question, therefore, is <em>not<\/em> if you are <em>using<\/em>\u00a0Git in your team. The question is if it helps you become a more professional and productive developer.<\/p>\n<p>&nbsp;<\/p>\n<p><strong>Making Git Easier to Use<\/strong><\/p>\n<p>We faced this question in our own team, too, and decided on a rather radical solution: we developed <a href=\"https:\/\/www.git-tower.com\/\">Tower<\/a>, a desktop GUI that makes Git easier &#8211; for us and over 80,000 customers like Google, Amazon, Salesforce and IBM. After being a Mac-only application for the last 7 years, it is <a href=\"https:\/\/www.git-tower.com\/windows\">now finally available on Windows<\/a>, too.<\/p>\n<p>We were eager to make our lives easier and not surrender in the face of Git&#8217;s steep learning curve. Let&#8217;s look at a couple of situations that we found particularly frustrating &#8211; and how we tackled them in Tower.<\/p>\n<p>&nbsp;<\/p>\n<p><strong>Managing Remote Repositories<\/strong><\/p>\n<p>A particularly tedious part of developers&#8217; everyday work is repository management: you can spend <em>hours<\/em>\u00a0fiddling with remote URLs, passwords, usernames, and authentication tokens. After connecting e.g. your <em>Visual Studio Team Services<\/em>\u00a0or <em>Team Foundation Server<\/em> account in Tower&#8217;s &#8220;Services Manager&#8221;, cloning and creating repositories become a matter of a single click!<\/p>\n<p><a href=\"https:\/\/devblogs.microsoft.com\/wp-content\/uploads\/sites\/6\/2019\/05\/tower-services@2x.png\"><img decoding=\"async\" src=\"https:\/\/devblogs.microsoft.com\/devops\/wp-content\/uploads\/sites\/6\/2016\/11\/tower-services@2x-500x273.png\" alt=\"Git Tower windows client\" width=\"500\" height=\"273\" class=\"alignnone wp-image-25895 size-mediumlarge\" \/><\/a><\/p>\n<p><strong>Undo &amp; Conflict Wizard<\/strong><\/p>\n<p>The possibility to undo mistakes is one of Git&#8217;s greatest advantages. However, knowing all the commands and parameters to <em>be able to use<\/em>\u00a0these undo functions is quite a different story. Tower makes these helpful features easily accessible through a well-designed UI.<\/p>\n<p>For example when a merge conflict occurs, Tower helps you understand and solve it by presenting it in a <em>visual<\/em> way, via its unique &#8220;Conflict Wizard&#8221; interface.<\/p>\n<p><a href=\"https:\/\/devblogs.microsoft.com\/wp-content\/uploads\/sites\/6\/2019\/05\/tower-conflict-wizard@2x.png\"><img decoding=\"async\" src=\"https:\/\/devblogs.microsoft.com\/devops\/wp-content\/uploads\/sites\/6\/2016\/11\/tower-conflict-wizard@2x-300x284.png\" alt=\"Git tower conflict wizard\" width=\"300\" height=\"284\" class=\"alignnone wp-image-25885 size-medium\" \/><\/a><\/p>\n<p><strong>Usability &amp; Workflows<\/strong><\/p>\n<p>Since our main goal is to <strong>make our users more productive<\/strong>, many usability and workflow improvements found their way into Tower:<\/p>\n<ul>\n<li><strong>Auto-Fetch<\/strong>: New changes are automatically fetched in the background for you.<\/li>\n<li><strong>Unsynced Commits<\/strong>: Instantly see commits that haven&#8217;t been pushed or pulled, yet.<\/li>\n<li><strong>Auto-Stashing<\/strong>: In appropriate situations, Tower asks you to stash any lingering local changes for you &#8211; and thereby reduce the risk of conflicts.<\/li>\n<\/ul>\n<p><a href=\"https:\/\/devblogs.microsoft.com\/wp-content\/uploads\/sites\/6\/2019\/05\/tower-working-copy@2x.png\"><img decoding=\"async\" src=\"https:\/\/devblogs.microsoft.com\/devops\/wp-content\/uploads\/sites\/6\/2016\/11\/tower-working-copy@2x-457x350.png\" alt=\"Git tower windows working copy\" width=\"457\" height=\"350\" class=\"alignnone wp-image-25905 size-mediumlarge\" \/><\/a><\/p>\n<p><strong>Try Tower Free for 30 Days<\/strong><\/p>\n<p>We created Tower to make Git easier to use. To let people access Git&#8217;s powerful feature set without shooting themselves in the foot.<\/p>\n<p>Of course, you don&#8217;t have to take our word for granted: you can <a href=\"https:\/\/www.git-tower.com\/windows\">download &amp; try the new Tower for Windows<\/a>\u00a0free for 30 days. We&#8217;re eager to hear what you think!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Posted on behalf of guest blogger:\u00a0Tobias G\u00fcnther, CEO Fournova\u00a0.\u00a0Git Tower and Team Services together provide an awesome\u00a0Git solution for your team, on Mac and (now!) Windows.\u00a0 \u2014 In the last few years, millions of developers have started to use Git. But just a fraction of them are using it confidently and productively: Git&#8217;s large feature [&hellip;]<\/p>\n","protected":false},"author":208,"featured_media":45953,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[1],"tags":[],"class_list":["post-25875","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-devops"],"acf":[],"blog_post_summary":"<p>Posted on behalf of guest blogger:\u00a0Tobias G\u00fcnther, CEO Fournova\u00a0.\u00a0Git Tower and Team Services together provide an awesome\u00a0Git solution for your team, on Mac and (now!) Windows.\u00a0 \u2014 In the last few years, millions of developers have started to use Git. But just a fraction of them are using it confidently and productively: Git&#8217;s large feature [&hellip;]<\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/devops\/wp-json\/wp\/v2\/posts\/25875","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devblogs.microsoft.com\/devops\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devblogs.microsoft.com\/devops\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/devops\/wp-json\/wp\/v2\/users\/208"}],"replies":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/devops\/wp-json\/wp\/v2\/comments?post=25875"}],"version-history":[{"count":0,"href":"https:\/\/devblogs.microsoft.com\/devops\/wp-json\/wp\/v2\/posts\/25875\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/devops\/wp-json\/wp\/v2\/media\/45953"}],"wp:attachment":[{"href":"https:\/\/devblogs.microsoft.com\/devops\/wp-json\/wp\/v2\/media?parent=25875"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/devops\/wp-json\/wp\/v2\/categories?post=25875"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/devops\/wp-json\/wp\/v2\/tags?post=25875"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}