<?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>Ahmed El Gamil &#187; svn</title>
	<atom:link href="http://www.blog.manhag.org/tag/svn/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.blog.manhag.org</link>
	<description></description>
	<lastBuildDate>Thu, 13 Oct 2011 10:54:00 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.3</generator>
<image>
<link>http://www.blog.manhag.org</link>
<url>http://www.blog.manhag.org/wp-content/mbp-favicon/favicon.ico</url>
<title>Ahmed El Gamil</title>
</image>
	<atom:link rel='hub' href='http://www.blog.manhag.org/?pushpress=hub'/>
		<item>
		<title>Working with SubVersion..Part 1</title>
		<link>http://www.blog.manhag.org/2008/11/subversion-1/</link>
		<comments>http://www.blog.manhag.org/2008/11/subversion-1/#comments</comments>
		<pubDate>Wed, 19 Nov 2008 13:34:12 +0000</pubDate>
		<dc:creator>Ahmed El Gamil</dc:creator>
				<category><![CDATA[Open Source Technologies]]></category>
		<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[UNIX/Linux]]></category>
		<category><![CDATA[LinkedIn]]></category>
		<category><![CDATA[OpenSource]]></category>
		<category><![CDATA[subversion]]></category>
		<category><![CDATA[svn]]></category>
		<category><![CDATA[xp-dev.com]]></category>

		<guid isPermaLink="false">http://www.blog.manhag.org/?p=233</guid>
		<description><![CDATA[So i have been working with a small personal coding project the last days, and i noticed that i will be distributing the code among several directories and files and i also need to go forward and backward in the code revisions, so i decided to get started with Subversion - The version control system. [...]]]></description>
			<content:encoded><![CDATA[
<div class="topsy_widget_data topsy_theme_silver" style="float: right;margin-left: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Fwww.blog.manhag.org%252F2008%252F11%252Fsubversion-1%252F%22%2C%20%22style%22%3A%20%22big%22%2C%20%22title%22%3A%20%22Working%20with%20SubVersion..Part%201%22%20%7D);"></div>
<p style="text-align: center;"><a href="http://www.blog.manhag.org/wp-content/uploads/2008/11/subversion_logo-200x173.png"><img class="size-full wp-image-238 alignnone" title="subversion_logo-200x173" src="http://www.blog.manhag.org/wp-content/uploads/2008/11/subversion_logo-200x173.png" alt="" width="200" height="173" /></a></p>
<p style="text-align: left;">So i have been working with a small personal coding project the last days, and i noticed that i will be distributing the code among several directories and files and i also need to go forward and backward in the code revisions, so i decided to get started with <a href="http://en.wikipedia.org/wiki/Subversion_(software)" target="_blank">Subversion</a> - The <a href="http://en.wikipedia.org/wiki/Version_control_system" target="_blank">version control system</a>.</p>
<p style="text-align: left;">I had some problems at first, then things started to get really good after some searching for information here and there, so here is a simple tutorial that will get you up with subversion in no time isA</p>
<h3 style="text-align: left;"><strong>First of all, What is Version control ?</strong></h3>
<blockquote style="text-align: left;"><p><strong>Revision control</strong> (also known as <strong>version control (system) (VCS)</strong>, <strong>source control</strong> or <strong>(source) code management (SCM)</strong>) is the management of multiple revisions of the same unit of information</p>
<p>Changes to these documents are usually identified by incrementing an associated number or letter code, termed the &#8220;revision number&#8221;, &#8220;revision level&#8221;, or simply &#8220;revision&#8221; and associated historically with the person making the change</p></blockquote>
<p style="text-align: left;">So how does this apply to coding and source code, well, when you are working with lots of code some times you need to know how did the code look like at a specific time or specific &#8220;version&#8221;.<span id="more-233"></span></p>
<p style="text-align: left;">also when there is more than one person collabarating to the same project, you need to know who changed that specific piece of code, when he did he changed it and if he commented on the change so you can know about his work</p>
<p style="text-align: left;">Here is a nice video on youtube than explains the issue in a very simple scenario <img src='http://www.blog.manhag.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p style="text-align: left;"><span class="youtube">
<object width="425" height="355">
<param name="movie" value="http://www.youtube.com/v/8wYiabh2hpM?color1=d6d6d6&amp;color2=f0f0f0&amp;border=0&amp;fs=1&amp;hl=en&amp;loop=&amp;showinfo=0&amp;iv_load_policy=3&amp;showsearch=0&amp;rel=1" />
<param name="allowFullScreen" value="true" />
<embed wmode="opaque" src="http://www.youtube.com/v/8wYiabh2hpM?color1=d6d6d6&amp;color2=f0f0f0&amp;border=0&amp;fs=1&amp;hl=en&amp;loop=&amp;showinfo=0&amp;iv_load_policy=3&amp;showsearch=0&amp;rel=1" type="application/x-shockwave-flash" allowfullscreen="true" width="425" height="355"></embed>
<param name="wmode" value="opaque" />
</object>
</span><p><a href="http://www.youtube.com/watch?v=8wYiabh2hpM"><img src="http://img.youtube.com/vi/8wYiabh2hpM/default.jpg" width="130" height="97" border=0></a></p><p><a href="http://www.youtube.com/watch?v=8wYiabh2hpM">www.youtube.com/watch?v=8wYiabh2hpM</a></p></p>
<h3 style="text-align: left;"><strong>Cool, What is Subversion ?</strong></h3>
<blockquote style="text-align: left;"><p><strong>Subversion</strong> (<strong>SVN</strong>) is a <a title="Revision control" href="http://en.wikipedia.org/wiki/Revision_control" target="_blank">version control</a> system initiated in 2000 by <a title="CollabNet" href="http://en.wikipedia.org/wiki/CollabNet" target="_blank">CollabNet</a> Inc. It is used to maintain current and historical versions of files such as <a title="Source code" href="http://en.wikipedia.org/wiki/Source_code" target="_blank">source code</a>, web pages, and documentation. Its goal is to be a mostly-compatible successor to the widely used <a title="Concurrent Versions System" href="http://en.wikipedia.org/wiki/Concurrent_Versions_System">Concurrent Versions System</a> (CVS).</p></blockquote>
<p style="text-align: left;">SVN is an Open source software and it is currently replacing the <a href="http://en.wikipedia.org/wiki/Concurrent_Versions_System" target="_blank">CVS</a></p>
<h3 style="text-align: left;"><strong>What are the ingredients that i need to start working with SubVersion ?</strong></h3>
<h4 style="text-align: left;">The Server</h4>
<p style="text-align: left;">First, you need a SVN Server (SVN works on server/client architecture), which basically contains some kind of a database that holds information about the different &#8220;revisions&#8221; of your code</p>
<p style="text-align: left;">we will skip setting up the server part as we will be using a hosted service on a remote server (note that you can actually build one on your local machine).</p>
<p style="text-align: left;">I have searched for a lot of online services and i think the best one that fitted my needs is <a href="http://www.xp-dev.com" target="_blank">XP-Dev.com</a></p>
<p style="text-align: left;">Go register an account there, and after logging in create a SubVersion repo from the <a href="http://www.xp-dev.com/subversion/" target="_blank">&#8220;subversion&#8221; tab</a></p>
<p style="text-align: left;">after you create the repo, you will get the following URLs</p>
<blockquote>
<p style="text-align: left;">https://svn.xp-dev.com/svn/repo_name/ (SSL)<br />
http://svn.xp-dev.com/svn/repo_name/ (No SSL)</p></blockquote>
<p style="text-align: left;">So these are the URLs that you can use to access the files in the repo and also use with SVN client</p>
<h4 style="text-align: left;">The Client</h4>
<p style="text-align: left;">The client is used to connect to the SVN server, at our case we will be using the svn command under UNIX/Linux based systems, if you want a GUI you can use <a href="http://rapidsvn.tigris.org/" target="_blank">RapidSVN</a> under Linux and <a href="http://tortoisesvn.tigris.org/" target="_blank">TorsieSVN</a> under windows</p>
<p style="text-align: left;">We will be discussing the Client in the next Post isA <img src='http://www.blog.manhag.org/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p>
<p style="text-align: left;">Please share your comments on the materials presented here , may be we will put it in the <a href="http://www.cat-hackers.com/wiki" target="_blank">Hackers Wiki</a> if it is good enough</p>
<p style="text-align: center;">سبحانك اللهم و بحمدك..أشهد ان لا اله الا أنت..أستغفرك و أتوب إليك</p>

]]></content:encoded>
			<wfw:commentRss>http://www.blog.manhag.org/2008/11/subversion-1/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>

