<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Michael Gall - Internet Marketing and SEO Consultant - Melbourne &#187; gnuarch</title>
	<atom:link href="http://wakeless.net/tag/gnuarch/feed" rel="self" type="application/rss+xml" />
	<link>http://wakeless.net</link>
	<description></description>
	<lastBuildDate>Fri, 13 Apr 2012 07:40:30 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
<xhtml:meta xmlns:xhtml="http://www.w3.org/1999/xhtml" name="robots" content="noindex" />
		<item>
		<title>Revision Control</title>
		<link>http://wakeless.net/archive/2007/03/revision-control</link>
		<comments>http://wakeless.net/archive/2007/03/revision-control#comments</comments>
		<pubDate>Mon, 05 Mar 2007 01:09:04 +0000</pubDate>
		<dc:creator>Michael Gall</dc:creator>
				<category><![CDATA[Revision Control]]></category>
		<category><![CDATA[cvs]]></category>
		<category><![CDATA[gnuarch]]></category>
		<category><![CDATA[software-engineering]]></category>
		<category><![CDATA[svn]]></category>

		<guid isPermaLink="false">http://wakeless.net/archive/2007/03/revision-control</guid>
		<description><![CDATA[I&#8217;ve decided to write a series of articles discussing version control. Answering questions such as, &#8220;Why should you use it?&#8221;, &#8220;How do you use it?&#8221; and &#8220;Who should use it?&#8221; I have very little doubt that this may be just repeating what has been written elsewhere by much better writers than myself, however I&#8217;m sure [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve decided to write a series of articles discussing version control. Answering questions such as, &#8220;Why should you use it?&#8221;, &#8220;How do you use it?&#8221; and &#8220;Who should use it?&#8221; I have very little doubt that this may be just repeating what has been written elsewhere by much <a href="http://joelonsoftware.com/articles/fog0000000043.html">better writers</a> than myself, however I&#8217;m sure that the process of writing it will be educational for me and worthwhile for anybody who reads it.</p>
<h2>What is Version Control?</h2>
<p>As always, the best place to initially find out what something is, is <a href="http://en.wikipedia.org/wiki/Revision_control" title="Revision Control">Wikipedia</a>. I thought about quoting something from there, but if I did, someone would probably change it and then I wouldn&#8217;t actually be quoting it. Anyway, revision control is any way of keeping track of the changes made to anything. Think about the &#8220;track changes&#8221; in Microsoft Word, or zipping up the code you are working on and calling it <em>mycode_01032007.zip</em>, these are both rudimentary forms of revision control. Most people have done something like this, probably thinking of it as backing up, but realistically you may want to be able to go back and have a look at the changes you made a week ago, and don&#8217;t necessarily want to unzip 3 different files to check which one the changes were made in.</p>
<p>Now, software developers are the laziest people, that&#8217;s why they started developing software in the first place, cause they couldn&#8217;t be bothered going through an entire file and pasting the same text in, or because they wanted to be able to go to a website to check there email cause they didn&#8217;t want to waste 25 seconds of their life opening up Outlook. I could name a million conceited examples of why software developers are lazy, but I suppose what I&#8217;m trying to say is, I&#8217;m a lazy bastard, and I&#8217;m a software developer. I&#8217;m getting off the track, but it won&#8217;t come as a surprise that some smart cookie, lazy, software developer wrote some software a long time ago called RCS (Revision Control System). Then in 1984 a guy by the name of <a href="http://www.cs.vu.nl/~dick/">Dick Grune</a> who doesn&#8217;t seem to be a lazy guy at all used RCS to <a href="http://www.cs.vu.nl/~dick/CVS.html#History">develop CVS</a> so he could work better with his students on a project.</p>
<p>CVS takes a folder of your files and stores it in a central location, then whenever you want to make changes, you <em>commit</em> those changes to the repository. CVS then stores a history of what you had, and what you&#8217;ve got, so at any time you can ask it what you had, this seems like a pretty good idea and it is. CVS is an amazingly successful piece of software, with some of the biggest open source software projects still using it (<a href="http://developer.mozilla.org/en/docs/Mozilla_Source_Code_Via_CVS">Mozilla</a> and <a href="http://apache-server.com/tutorials/LPapache-cvs.html">Apache</a> to name 2). 23 years is a long time for a piece of software not to have been superseded. Now to say it hasn&#8217;t been superseded is a bit of a lie, there are a number of different programs that do what it does, <a href="http://subversion.tigris.org/">SVN</a>, <a href="http://www.gnu.org/software/gnu-arch/">Gnu Arch</a> and <a href="http://msdn.microsoft.com/ssafe/">Visual SourceSafe</a> are a few of these, but essentially they don&#8217;t do that much more than CVS did 23 years ago, they just do it differently/better/worse or with more integration into certain products.</p>
]]></content:encoded>
			<wfw:commentRss>http://wakeless.net/archive/2007/03/revision-control/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

