{"id":20335,"date":"2016-08-24T07:00:41","date_gmt":"2016-08-24T11:00:41","guid":{"rendered":"https:\/\/blogs.msdn.microsoft.com\/visualstudioalm\/?p=20335"},"modified":"2019-02-14T17:33:41","modified_gmt":"2019-02-15T01:33:41","slug":"becoming-more-productive-with-git-tower-and-team-services","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/devops\/becoming-more-productive-with-git-tower-and-team-services\/","title":{"rendered":"Becoming more productive with Git: Tower and Team Services"},"content":{"rendered":"<p><em>Posted on behalf of guest blogger:\u00a0<strong>Tobias G\u00fcnther, CEO <a href=\"https:\/\/www.fournova.com\/\">Fournova<\/a><\/strong><\/em><\/p>\n<p>&#8212;<\/p>\n<p><span style=\"font-weight: 400\">Working with Git in <a href=\"https:\/\/beta.visualstudio.com\/team-services?wt.mc_id=o~msdn~blog~TowerVSTSAnnouncement&amp;utm_source=MSDN&amp;utm_medium=blog&amp;utm_campaign=VSTSTowerAnnouncementAug2016\">Visual Studio Team Services<\/a> and Team Foundation Server just became even easier: the popular Git desktop client <a href=\"https:\/\/www.git-tower.com\/?ref=microsoft\">Tower<\/a>\u00a0now comes with dedicated integrations for these services. With that, cloning and creating repositories is now just a click away &#8211; and many other Git tasks become easier and more accessible.<\/span><\/p>\n<p><span style=\"font-weight: 400\">Also, with 70,000 users on the Mac, <a href=\"https:\/\/www.git-tower.com\/p\/windows-beta\">Tower is now releasing a Windows version<\/a>\u00a0&#8211; of course with integrations for Team Services and Team Foundation Server, too.<\/span><\/p>\n<p><span style=\"font-weight: 400\">Git has become a central tool for many teams. With this huge popularity in mind, using it productively is key to being productive in your work in general. It is important not only that you understand key concepts, but also that key features are easily accessible &#8211; and not hidden behind a hard to remember command and its seven essential parameters&#8230;<\/span><\/p>\n<p><span style=\"font-weight: 400\">This is where Tower, a desktop client for Git, comes into play. The software was created to make using Git easier while still providing access to all of Git&#8217;s advanced feature set. Let&#8217;s look at a couple of real-world use cases and how to deal with them.<\/span><\/p>\n<h2><span style=\"font-weight: 400\">Cloning &amp; Creating Repositories<\/span><\/h2>\n<p><span style=\"font-weight: 400\">When you think about cloning a repository from your remote server, you might not expect much trouble. But let&#8217;s not sugarcoat how many hoops one has to jump through in reality: it starts with hunting for the correct URL and goes on with authenticating yourself. As if usernames and passwords weren&#8217;t enough, this might also involve SSH key management, generating personal access tokens, creating passcodes on your phone&#8230; Not a procedure that most people enjoy.<\/span><\/p>\n<p><a href=\"https:\/\/devblogs.microsoft.com\/wp-content\/uploads\/sites\/6\/2019\/05\/Tower-1.png\"><img decoding=\"async\" src=\"https:\/\/devblogs.microsoft.com\/devops\/wp-content\/uploads\/sites\/6\/2016\/08\/Tower-1-500x317.png\" alt=\"Team Services Git repositories in Tower\" width=\"500\" height=\"317\" class=\"alignnone wp-image-20345 size-mediumlarge\" \/><\/a><\/p>\n<p><span style=\"font-weight: 400\">Tower helps you not only when working with your local coding projects. It also shows you all of the repositories in your service accounts. Cloning one of these is now just a matter of a single click. And creating a new one in the account can be done right from within Tower.<\/span><\/p>\n<p><span style=\"font-weight: 400\">Most importantly: wrestling with usernames, passwords, tokens, or URLs is a thing of the past.<\/span><\/p>\n<h2><span style=\"font-weight: 400\"><\/span><span style=\"font-weight: 400\">Making Git Easier and Developers More Productive<\/span><\/h2>\n<p><span style=\"font-weight: 400\">Connecting your Visual Studio Team Services and Team Foundation Server accounts with Tower is just the beginning. Using a desktop GUI like Tower offers much more in order to make you a more productive developer.<\/span><\/p>\n<ul>\n<li><b>Solving merge conflicts<\/b><span style=\"font-weight: 400\"> becomes much easier through Tower\u2019s &#8220;Conflict Wizard&#8221;. It is the first and only GUI that presents conflicts in a <\/span><i><span style=\"font-weight: 400\">visual<\/span><\/i><span style=\"font-weight: 400\"> way and thereby helps you <\/span><i><span style=\"font-weight: 400\">understand<\/span><\/i><span style=\"font-weight: 400\"> them.\n<\/span>\n<a href=\"https:\/\/devblogs.microsoft.com\/wp-content\/uploads\/sites\/6\/2019\/05\/merge-conflict-tower.gif\"><img decoding=\"async\" src=\"https:\/\/devblogs.microsoft.com\/devops\/wp-content\/uploads\/sites\/6\/2016\/08\/merge-conflict-tower-344x350.gif\" alt=\"Git merge conflicts in Tower\" width=\"344\" height=\"350\" class=\"alignnone wp-image-20355 size-mediumlarge\" \/><\/a><\/li>\n<li><b>Undoing mistakes<\/b><span style=\"font-weight: 400\"> easily is key if you want to <\/span><i><span style=\"font-weight: 400\">work with confidence<\/span><\/i><span style=\"font-weight: 400\">. Rolling back and reverting older versions, discarding local changes, or inspecting a file&#8217;s detailed history are all part of Tower&#8217;s UI.\n<\/span><\/li>\n<li><b>Creating semantic commits<\/b><span style=\"font-weight: 400\"> prevents version control from becoming a &#8220;backup dump&#8221;. Only commits that are crafted carefully will convey meaning &#8211; for your colleagues and yourself. Tower allows you to compose a commit very granularly, even to the level of adding only <\/span><i><span style=\"font-weight: 400\">certain changed lines<\/span><\/i><span style=\"font-weight: 400\"><span style=\"font-weight: 400\"> to your next commit. And with the full traceability between user stories, commits, comments, builds and releases in Visual Studio Team Services, your team can confidently trace and diagnose issues with any commit<\/span><\/span>&nbsp;<\/li>\n<li><span style=\"font-weight: 400\">\u00a0<\/span><b>Automatic fetching<\/b><span style=\"font-weight: 400\"> makes sure that you always have an overview on the latest developments in your team. Without the need to remember executing that &#8220;Fetch&#8221; command all the time.<\/span><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400\">We&#8217;re excited to bring all of this to Visual Studio Team Services and Team Foundation Server teams &#8211; not only on the <a href=\"https:\/\/www.git-tower.com\/?ref=microsoft\">Mac<\/a>, but now also with a native <a href=\"https:\/\/www.git-tower.com\/p\/windows-beta\">Windows version of Tower<\/a><\/span><span style=\"font-weight: 400\">.<\/span><\/p>\n<p><span style=\"font-weight: 400\">You can find more details on the <a href=\"https:\/\/marketplace.visualstudio.com\/items?itemName=fournova.tower-mac\">Visual Studio Marketplace<\/a><\/span><\/p>\n<p><span style=\"font-weight: 400\">Finally, I would love to hear what you struggle with in your own day-to-day Git usage. Let me know in the comments!<\/span><\/p>\n<hr \/>\n<p><em>We&#8217;re super excited about the integration between Tower, the best Mac client for Git \u00a0and Team Services\/TFS, the best place to collaborate with your team with unlimited free private Git repos. We thank Tobias and team for an amazing job and hope that our current and future users will find this integration\u00a0helpful. If you try Tower and love it, please let Tobias and team know by leaving a quick review for\u00a0the extension on the Visual Studio Marketplace\u00a0<\/em><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Posted on behalf of guest blogger:\u00a0Tobias G\u00fcnther, CEO Fournova &#8212; Working with Git in Visual Studio Team Services and Team Foundation Server just became even easier: the popular Git desktop client Tower\u00a0now comes with dedicated integrations for these services. With that, cloning and creating repositories is now just a click away &#8211; and many other [&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":[253,229,1,225],"tags":[],"class_list":["post-20335","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-azure-devops-server","category-community","category-devops","category-git"],"acf":[],"blog_post_summary":"<p>Posted on behalf of guest blogger:\u00a0Tobias G\u00fcnther, CEO Fournova &#8212; Working with Git in Visual Studio Team Services and Team Foundation Server just became even easier: the popular Git desktop client Tower\u00a0now comes with dedicated integrations for these services. With that, cloning and creating repositories is now just a click away &#8211; and many other [&hellip;]<\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/devops\/wp-json\/wp\/v2\/posts\/20335","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=20335"}],"version-history":[{"count":0,"href":"https:\/\/devblogs.microsoft.com\/devops\/wp-json\/wp\/v2\/posts\/20335\/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=20335"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/devops\/wp-json\/wp\/v2\/categories?post=20335"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/devops\/wp-json\/wp\/v2\/tags?post=20335"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}