{"id":60,"date":"2008-08-11T04:59:41","date_gmt":"2008-08-11T10:59:41","guid":{"rendered":"http:\/\/bob-ak.com\/?p=60"},"modified":"2008-08-13T06:09:11","modified_gmt":"2008-08-13T12:09:11","slug":"advantages-of-using-a-version-control-system-vcs","status":"publish","type":"post","link":"https:\/\/bob-ak.com\/?p=60","title":{"rendered":"Advantages of using a version control system (vcs)"},"content":{"rendered":"<p>From a discussion on <a href=\"http:\/\/www.reddit.com\/comments\/6vr9m\/ask_proggit_any_single_developers_using_a_version\/\" target=\"_blank\">reddit.com<\/a>.<\/p>\n<blockquote><p>A modern version control system has three clear benefits over the &#8220;folder backup&#8221; method.<\/p>\n<ol>\n<li>File space. Let&#8217;s say your code changes 10% each week. Under the &#8220;folder backup&#8221; method, each week you&#8217;re saving 100% of the code. Using a proper VCS, you&#8217;re only saving 10% of your code. I know hard drive space is cheap, but it&#8217;s not free and I never seem to have enough.<\/li>\n<li>History. The key to VCS, in my opinion, is being able to document your changes in more granular level than a file called &#8220;Changelog.txt&#8221; that might not get changed whenever you work on your code.<\/li>\n<li>Bug-location: Let&#8217;s say you find a bug in a method. You search the history for that file and let the VCS runs the diffs for you.<\/li>\n<li>Complete freedom to change code. You don&#8217;t have to worry about breaking something, or removing possibly useful code. Before I moved to VCS, I used to comment out old code liberally but keep it &#8216;cos I might need it. This quickly becomes a PITA.<\/li>\n<\/ol>\n<p>That being said, I&#8217;ve got some caveats too.<\/p>\n<ol>\n<li>You&#8217;re still going to want to backup the version control folder<\/li>\n<li>You&#8217;re entrusting your entire code base to a program that may itself be buggy. You&#8217;re going to want to make sure (a) it&#8217;s reliable (no bleeding edge releases) and (b) you understand how to work it<\/li>\n<\/ol>\n<p>Popular systems:<\/p>\n<ul>\n<li>Git<\/li>\n<li>CVS<\/li>\n<li>VCS<\/li>\n<li>Subversion<\/li>\n<li>TLA<\/li>\n<li>Darcs<\/li>\n<li>Mercurial<\/li>\n<\/ul>\n<\/blockquote>\n<p>GIT seems to be very popular.<\/p>\n<p>Article on <a href=\"http:\/\/lifehacker.com\/software\/subversion\/hack-attack-how-to-set-up-a-personal-home-subversion-server-188582.php\" target=\"_blank\">How to set up a personal home Subversion server<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>From a discussion on reddit.com. A modern version control system has three clear benefits over the &#8220;folder backup&#8221; method. File space. Let&#8217;s say your code changes 10% each week. Under the &#8220;folder backup&#8221; method, each week you&#8217;re saving 100% of the code. Using a proper VCS, you&#8217;re only saving 10% of your code. I know [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[14],"tags":[],"class_list":["post-60","post","type-post","status-publish","format-standard","hentry","category-programming"],"_links":{"self":[{"href":"https:\/\/bob-ak.com\/index.php?rest_route=\/wp\/v2\/posts\/60","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/bob-ak.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/bob-ak.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/bob-ak.com\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/bob-ak.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=60"}],"version-history":[{"count":11,"href":"https:\/\/bob-ak.com\/index.php?rest_route=\/wp\/v2\/posts\/60\/revisions"}],"predecessor-version":[{"id":71,"href":"https:\/\/bob-ak.com\/index.php?rest_route=\/wp\/v2\/posts\/60\/revisions\/71"}],"wp:attachment":[{"href":"https:\/\/bob-ak.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=60"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/bob-ak.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=60"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/bob-ak.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=60"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}