<?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/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Rchakra&#039;s Blog</title>
	<atom:link href="http://rchakra.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://rchakra.wordpress.com</link>
	<description>My experiments in software development</description>
	<lastBuildDate>Fri, 04 Dec 2009 16:34:51 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='rchakra.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Rchakra&#039;s Blog</title>
		<link>http://rchakra.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://rchakra.wordpress.com/osd.xml" title="Rchakra&#039;s Blog" />
	<atom:link rel='hub' href='http://rchakra.wordpress.com/?pushpress=hub'/>
		<item>
		<title>Intro to .NET threads</title>
		<link>http://rchakra.wordpress.com/2009/11/11/intro-to-net-threads/</link>
		<comments>http://rchakra.wordpress.com/2009/11/11/intro-to-net-threads/#comments</comments>
		<pubDate>Wed, 11 Nov 2009 13:12:10 +0000</pubDate>
		<dc:creator>rchakra</dc:creator>
				<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://rchakra.wordpress.com/?p=87</guid>
		<description><![CDATA[<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rchakra.wordpress.com&amp;blog=7328272&amp;post=87&amp;subd=rchakra&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<iframe src='http://www.slideshare.net/slideshow/embed_code/1960931' width='480' height='394'></iframe>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rchakra.wordpress.com/87/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rchakra.wordpress.com/87/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/rchakra.wordpress.com/87/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/rchakra.wordpress.com/87/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/rchakra.wordpress.com/87/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/rchakra.wordpress.com/87/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/rchakra.wordpress.com/87/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/rchakra.wordpress.com/87/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/rchakra.wordpress.com/87/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/rchakra.wordpress.com/87/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/rchakra.wordpress.com/87/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/rchakra.wordpress.com/87/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/rchakra.wordpress.com/87/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/rchakra.wordpress.com/87/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rchakra.wordpress.com&amp;blog=7328272&amp;post=87&amp;subd=rchakra&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://rchakra.wordpress.com/2009/11/11/intro-to-net-threads/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/8a557a272cb8fcd5dbdd45d461cb5097?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">rchakra</media:title>
		</media:content>
	</item>
		<item>
		<title>Analysis patterns &#8211; my interpretation</title>
		<link>http://rchakra.wordpress.com/2009/11/11/analysis-patterns-my-interpretation/</link>
		<comments>http://rchakra.wordpress.com/2009/11/11/analysis-patterns-my-interpretation/#comments</comments>
		<pubDate>Wed, 11 Nov 2009 13:09:33 +0000</pubDate>
		<dc:creator>rchakra</dc:creator>
				<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://rchakra.wordpress.com/?p=84</guid>
		<description><![CDATA[<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rchakra.wordpress.com&amp;blog=7328272&amp;post=84&amp;subd=rchakra&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<iframe src='http://www.slideshare.net/slideshow/embed_code/2000325' width='480' height='394'></iframe>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rchakra.wordpress.com/84/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rchakra.wordpress.com/84/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/rchakra.wordpress.com/84/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/rchakra.wordpress.com/84/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/rchakra.wordpress.com/84/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/rchakra.wordpress.com/84/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/rchakra.wordpress.com/84/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/rchakra.wordpress.com/84/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/rchakra.wordpress.com/84/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/rchakra.wordpress.com/84/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/rchakra.wordpress.com/84/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/rchakra.wordpress.com/84/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/rchakra.wordpress.com/84/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/rchakra.wordpress.com/84/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rchakra.wordpress.com&amp;blog=7328272&amp;post=84&amp;subd=rchakra&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://rchakra.wordpress.com/2009/11/11/analysis-patterns-my-interpretation/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/8a557a272cb8fcd5dbdd45d461cb5097?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">rchakra</media:title>
		</media:content>
	</item>
		<item>
		<title>Intro to UML</title>
		<link>http://rchakra.wordpress.com/2009/11/11/intro-to-uml/</link>
		<comments>http://rchakra.wordpress.com/2009/11/11/intro-to-uml/#comments</comments>
		<pubDate>Wed, 11 Nov 2009 12:40:44 +0000</pubDate>
		<dc:creator>rchakra</dc:creator>
				<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://rchakra.wordpress.com/?p=81</guid>
		<description><![CDATA[<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rchakra.wordpress.com&amp;blog=7328272&amp;post=81&amp;subd=rchakra&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<iframe src='http://www.slideshare.net/slideshow/embed_code/1960941' width='480' height='394'></iframe>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rchakra.wordpress.com/81/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rchakra.wordpress.com/81/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/rchakra.wordpress.com/81/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/rchakra.wordpress.com/81/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/rchakra.wordpress.com/81/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/rchakra.wordpress.com/81/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/rchakra.wordpress.com/81/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/rchakra.wordpress.com/81/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/rchakra.wordpress.com/81/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/rchakra.wordpress.com/81/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/rchakra.wordpress.com/81/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/rchakra.wordpress.com/81/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/rchakra.wordpress.com/81/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/rchakra.wordpress.com/81/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rchakra.wordpress.com&amp;blog=7328272&amp;post=81&amp;subd=rchakra&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://rchakra.wordpress.com/2009/11/11/intro-to-uml/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/8a557a272cb8fcd5dbdd45d461cb5097?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">rchakra</media:title>
		</media:content>
	</item>
		<item>
		<title>Ideas for Software components</title>
		<link>http://rchakra.wordpress.com/2009/11/06/ideas-for-software-components/</link>
		<comments>http://rchakra.wordpress.com/2009/11/06/ideas-for-software-components/#comments</comments>
		<pubDate>Fri, 06 Nov 2009 07:12:45 +0000</pubDate>
		<dc:creator>rchakra</dc:creator>
				<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://rchakra.wordpress.com/?p=73</guid>
		<description><![CDATA[Auto logging framework, which will automatically log all exceptions, entry and exit of methods, errors and other diagnostic data without any manual coding Auto SQL tuner which will read a piece of SQL and suggest better way of writing the same SQL with comments on why Document scanner which will scan a document and automatically [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rchakra.wordpress.com&amp;blog=7328272&amp;post=73&amp;subd=rchakra&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<ul>
<li>Auto logging framework, which will automatically log all exceptions, entry and exit of methods, errors and other diagnostic data without any manual coding</li>
<li>Auto SQL tuner which will read a piece of SQL and suggest better way of writing the same SQL with comments on why</li>
<li>Document scanner which will scan a document and automatically populate a form with the corresponding data from the scanned document</li>
<li>Auto refactor which will review a piece of code and suggest way of refactoring it</li>
<li>Auto transcriber which will automatically convert spoken content in audio tapes to word documents</li>
<li>Test data generator which will generate test data covering all kinds of test cases and scenarios for an application</li>
<li>Microsoft.NET exception suggestion which will scan an application and recommend appropriate exceptions at appropriate places in the code</li>
<li>A system visualizer, which shows data flowing through an application like watching water flow thru a transparent pipe. So this can help us know the architecture, troubleshoot performance problems, and functional problems, if any. There should be a master monitor, which brings up an image, which shows data flowing through with some kind of a visual effect.</li>
<li>A system, which tells a non-DBA what activities, should be taken to tune the database.</li>
<li> A troubleshooting application, which will send the screen shot as well as required WMI values (or Performance monitor values) to a specified email Id when user presses a function key to notify a problem. When the function key is pressed a popup window will appear where the user can key in what his problem is in his words. The WMI counters that are captured and reported at the time of this function key press can be configured from a remote computer.</li>
</ul>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rchakra.wordpress.com/73/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rchakra.wordpress.com/73/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/rchakra.wordpress.com/73/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/rchakra.wordpress.com/73/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/rchakra.wordpress.com/73/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/rchakra.wordpress.com/73/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/rchakra.wordpress.com/73/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/rchakra.wordpress.com/73/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/rchakra.wordpress.com/73/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/rchakra.wordpress.com/73/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/rchakra.wordpress.com/73/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/rchakra.wordpress.com/73/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/rchakra.wordpress.com/73/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/rchakra.wordpress.com/73/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rchakra.wordpress.com&amp;blog=7328272&amp;post=73&amp;subd=rchakra&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://rchakra.wordpress.com/2009/11/06/ideas-for-software-components/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/8a557a272cb8fcd5dbdd45d461cb5097?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">rchakra</media:title>
		</media:content>
	</item>
		<item>
		<title>Steps I took to experiment merging just one revision from one branch to another</title>
		<link>http://rchakra.wordpress.com/2009/11/02/steps-i-took-to-experiment-merging-just-one-revision-from-one-branch-to-another/</link>
		<comments>http://rchakra.wordpress.com/2009/11/02/steps-i-took-to-experiment-merging-just-one-revision-from-one-branch-to-another/#comments</comments>
		<pubDate>Mon, 02 Nov 2009 15:57:57 +0000</pubDate>
		<dc:creator>rchakra</dc:creator>
				<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://rchakra.wordpress.com/2009/11/02/steps-i-took-to-experiment-merging-just-one-revision-from-one-branch-to-another/</guid>
		<description><![CDATA[Steps I took to experiment merging just one revision from one branch to another 1)      I created a folder called D:\svn_repository\repo 2)      Under this repo folder, I created 3 folders called Trunk, Branch and Branch2 3)      I made all these 3 as repositories by changing directory to repo and keying in the following: - 3.1) [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rchakra.wordpress.com&amp;blog=7328272&amp;post=63&amp;subd=rchakra&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<h1>Steps I took to experiment merging just one revision from one branch to another</h1>
<p>1)      I created a folder called D:\svn_repository\repo</p>
<p>2)      Under this repo folder, I created 3 folders called Trunk, Branch and Branch2</p>
<p>3)      I made all these 3 as repositories by changing directory to repo and keying in the following: -</p>
<p>3.1) Svnadmin create &#8211;fs-type fsfs branch</p>
<p>3.2) svnadmin create &#8211;fs-type fsfs branch2</p>
<p>3.3) svnadmin create &#8211;fs-type fsfs trunk</p>
<p>4)      I went into the ‘conf’ sub folders of all these 3 and edited the svnserve.conf files and uncommented the anon-access’, ‘auth-access’ and ‘password-db’ sections. In each of these sub folders I also edited the ‘passwd’ files and uncommented the default passwords (harry, harryssecret).</p>
<p>5)      I created 3 batch files (file1.bat, file2.bat and file3.bat) with contents like this :-</p>
<p>5.1) svnserve.exe –d –r  D:/svn_repository/repos/trunk  -–listen-port 3691</p>
<p>5.2) svnserve.exe –d –r  D:/svn_repository/repos/branch  -–listen-port 3692</p>
<p>5.3) svnserve.exe –d –r  D:/svn_repository/repos/branch2  -–listen-port 3693</p>
<p>I ran these 3 batch files so that 3 repositories were running</p>
<p>6)      I imported some files into the ‘Trunk’ repository by right clicking that folder , choosing ‘import’ and using the URL ‘svn://localhost:3691/Repos/Trunk’</p>
<p>7)      Then created some client folder like ‘F:/SVNMergeTrialRepo/Trunk’</p>
<p>8)      I checked out into this folder with the above URL</p>
<p>9)      Then created 2 more client folders like ‘F:/SVNMergeTrialRepo/Branch’ and ‘F:/SVNMergeTrialRepo/Branch2’</p>
<p>10)  Now I checked out into ‘Branch’ from URL ‘svn://localhost:3691/Repos/Branch’</p>
<p>11)  Then I checked out into Branch2 from URL ‘svn://localhost:3691/Repos/Branch2’</p>
<p>12)  Now I created a sub-folder F1 with a FileOne.Text in it within Branch client folder and added and committed it (revision 4)</p>
<p>13)  Now I created a sub-folder F2 with a FileTwo.Text in it within Branch2 client folder and added and committed it (revision 5)</p>
<p>14)  Then I right clicked ‘Branch’  folder and selected Merge. I selected the ‘From branch’ as  svn://localhost:3691/Repos/Branch2’ and selected revision number 5</p>
<p>15)  Then I committed the ‘Branch’ folder</p>
<p>16)  Now when I see the contents of ‘Branch’ folder, it has the ‘FileTwo’ which was added in revision 5 under ‘Branch2’</p>
<p>So something done in a specific revision in one branch was replicated in another branch using merge.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rchakra.wordpress.com/63/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rchakra.wordpress.com/63/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/rchakra.wordpress.com/63/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/rchakra.wordpress.com/63/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/rchakra.wordpress.com/63/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/rchakra.wordpress.com/63/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/rchakra.wordpress.com/63/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/rchakra.wordpress.com/63/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/rchakra.wordpress.com/63/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/rchakra.wordpress.com/63/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/rchakra.wordpress.com/63/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/rchakra.wordpress.com/63/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/rchakra.wordpress.com/63/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/rchakra.wordpress.com/63/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rchakra.wordpress.com&amp;blog=7328272&amp;post=63&amp;subd=rchakra&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://rchakra.wordpress.com/2009/11/02/steps-i-took-to-experiment-merging-just-one-revision-from-one-branch-to-another/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/8a557a272cb8fcd5dbdd45d461cb5097?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">rchakra</media:title>
		</media:content>
	</item>
		<item>
		<title>My notes on how to use Tortoise SVN client for Subversion</title>
		<link>http://rchakra.wordpress.com/2009/10/28/my-notes-on-how-to-use-tortoise-svn-client-for-subversion/</link>
		<comments>http://rchakra.wordpress.com/2009/10/28/my-notes-on-how-to-use-tortoise-svn-client-for-subversion/#comments</comments>
		<pubDate>Wed, 28 Oct 2009 08:04:15 +0000</pubDate>
		<dc:creator>rchakra</dc:creator>
				<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://rchakra.wordpress.com/?p=58</guid>
		<description><![CDATA[  •Check out is done the first time the client working copy (working folder) is being set up •Create a folder as instructed by the TL (maybe D:/SVNClient) •Right click on this new folder and choose ‘SVN Checkout’ •Click on the ‘SVN Checkout’ option in the pop up menu •A Checkout dialog box will pop [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rchakra.wordpress.com&amp;blog=7328272&amp;post=58&amp;subd=rchakra&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>  •<strong>Check out</strong> is done the <span style="text-decoration:underline;">first time</span> the client <span style="text-decoration:underline;">working copy</span> (working folder) is being set up</p>
<p>•Create a folder as instructed by the TL (maybe D:/SVNClient)</p>
<p>•Right click on this new folder and choose ‘<span style="text-decoration:underline;">SVN </span><span style="text-decoration:underline;">Checkout</span>’</p>
<p>•Click on the ‘SVN Checkout’ option in the pop up menu</p>
<p>•A Checkout dialog box will pop up</p>
<p>•Key in the <span style="text-decoration:underline;">URL of the Subversion repository</span> (svn://chakravarthy:3691/myWebApp)</p>
<p>•Ensure checkout directory is correct .Click ‘Ok’</p>
<p>•The <span style="text-decoration:underline;">authentication dialog box</span> will open up</p>
<p>•Key in your ‘Username’ and ‘password’ Press ‘Ok’</p>
<p>•The checkout dialog box will list the files it has checked out and it’s <span style="text-decoration:underline;">revision number</span></p>
<p>  •The SVNClient folder now has a <span style="text-decoration:underline;">green tick</span> mark to say that the client working folder (called working copy) is <span style="text-decoration:underline;">in synch</span> with the repository</p>
<p>  •After some time you <span style="text-decoration:underline;">save your work</span> .Now notice the <span style="text-decoration:underline;">red tick mark</span> on the file you <span style="text-decoration:underline;">just now edited </span></p>
<p>  •You can <span style="text-decoration:underline;">see what are the changes</span> you did just now . Right click on the file with the red tick, choose ‘TortoiseSVN’ and choose ‘<span style="text-decoration:underline;">Diff</span>’.  You get a <span style="text-decoration:underline;">difference between the working </span><span style="text-decoration:underline;">copy and the version you had recently updated </span><span style="text-decoration:underline;">from server </span></p>
<p>  •Now that you are satisfied with the change you made, you can <strong>‘<span style="text-decoration:underline;">commit</span>’</strong> the change to the server •Right click <span style="text-decoration:underline;">on the file, or any of its parent </span><span style="text-decoration:underline;">folders</span>, and choose ‘SVN Commit’</p>
<p>  •The <span style="text-decoration:underline;">log message box</span> opens for you to select the files you wish to commit. <span style="text-decoration:underline;">Tick the files you </span><span style="text-decoration:underline;">wish to commit </span>•<span style="text-decoration:underline;">Only commit files that you are editing, or files </span><span style="text-decoration:underline;">which are needed to rebuild the system . Do </span><span style="text-decoration:underline;">not commit outputs of compilation </span>•Key in a <span style="text-decoration:underline;">suitable message</span> for this commit</p>
<p>  •If <span style="text-decoration:underline;">someone else has already committed the </span><span style="text-decoration:underline;">very same file in the meantime</span>, SVN will ask you to <span style="text-decoration:underline;">first update your working copy </span></p>
<p><span style="text-decoration:underline;"><strong>To   Update the working copy</strong> ,   Right click the file or the parent folders and choose the ‘<span style="text-decoration:underline;">SVN Update</span>’ option</span></p>
<p>  •You will now get a ‘merged’ message box which means that your <span style="text-decoration:underline;">change and the change </span><span style="text-decoration:underline;">in the server have got merged in the working </span><span style="text-decoration:underline;">copy </span>•<span style="text-decoration:underline;"> </span></p>
<p>  <strong>My first conflict !</strong></p>
<p>  •If the file I am trying to commit is <span style="text-decoration:underline;">out of date</span>, SVN asks me to <span style="text-decoration:underline;">update my copy first </span>•So I update it •However, <span style="text-decoration:underline;">if the same lines have been edited </span><span style="text-decoration:underline;">or touched</span> in my working copy as well as the Repository copy, then I get a <span style="text-decoration:underline;">conflict error </span><span style="text-decoration:underline;">message</span> ….. •The file and folders now have a <span style="text-decoration:underline;">yellow warning </span><span style="text-decoration:underline;">sign</span></p>
<p> <strong> When there is a conflict</strong>   there are <span style="text-decoration:underline;">2 additional files beside the file which </span><span style="text-decoration:underline;">has the conflict </span>•These files have names like ‘filename.mine’, ‘filename.revisionx’ and ‘filename.revisiony’ •<span style="text-decoration:underline;">Open the conflicting file in an editor </span></p>
<p><strong>  In case of Conflict</strong>   •The changes made by you and the <span style="text-decoration:underline;">changes</span> made by the other SVN user are <span style="text-decoration:underline;">marked by </span><span style="text-decoration:underline;">arrows</span> &lt;&lt;&lt;&lt;&lt;&lt;&lt; •<span style="text-decoration:underline;">Your change</span> has a caption ‘.mine’ and the <span style="text-decoration:underline;">other change</span> has a caption ‘.r(n)’ where n is the revision number</p>
<p>  •<span style="text-decoration:underline;">Retain the change which is correct</span>, and <span style="text-decoration:underline;">remove</span> the unwanted change •<span style="text-decoration:underline;">Save</span> the file</p>
<p>  •Having cleaned up the conflicting file, now right click the file or the parent folders and <span style="text-decoration:underline;">click the ‘Resolved’ option </span></p>
<p>  •Conflict has been resolved , unwanted revision files removed •Now we need to <span style="text-decoration:underline;">commit </span></p>
<p><strong>  How to add a file to the repository</strong></p>
<p>  •If you have <span style="text-decoration:underline;">added a file in your working copy</span> which needs to be added to repository, <span style="text-decoration:underline;">right </span><span style="text-decoration:underline;">click the file and click ‘Add’ </span>•The ‘file’ that has been added will have a <span style="text-decoration:underline;">blue </span><span style="text-decoration:underline;">plus sign</span> – but <span style="text-decoration:underline;">it is not yet in repository ! </span></p>
<p>  <strong>Deleting a file in Server</strong></p>
<p>  •If you choose a folder / file , <span style="text-decoration:underline;">right click , choose </span><span style="text-decoration:underline;">‘Delete’ and then commit, the files / folders will </span><span style="text-decoration:underline;">get deleted from the repository </span>•<span style="text-decoration:underline;">If you only want to delete the client copy and </span><span style="text-decoration:underline;">get a fresh one from repository, use a normal </span><span style="text-decoration:underline;">file delete and Update your root folder </span></p>
<p>Now the file <span style="text-decoration:underline;">‘A new file’ has disappeared from the folder</span> since I used the Tortoise <span style="text-decoration:underline;">Delete option</span> against the file</p>
<p>  •<span style="text-decoration:underline;">After deleting a file</span> using the Tortoise client, the <span style="text-decoration:underline;">parent folder needs to be committed</span> for the file to be deleted from the repository •<span style="text-decoration:underline;">Otherwise the client file would have been </span><span style="text-decoration:underline;">deleted but the server repository still has the </span><span style="text-decoration:underline;">file</span></p>
<p>  •If you wish to <strong>rename</strong> a file which is under SVN, use the <span style="text-decoration:underline;">Tortoise rename</span>, <span style="text-decoration:underline;">not</span> the <span style="text-decoration:underline;">Windows file rename </span></p>
<p>  •The tortoise rename does 2 steps – it <span style="text-decoration:underline;">first </span><span style="text-decoration:underline;">copies the file to another file with the new </span><span style="text-decoration:underline;">name</span> and it <span style="text-decoration:underline;">deletes the earlier file </span></p>
<p> <strong>View the history of all changes</strong>  To view <span style="text-decoration:underline;">who did what</span> , right click the folder, or file and choose ‘<span style="text-decoration:underline;">Show Log</span>’.  Right click and choose ‘<span style="text-decoration:underline;">Check for modifications’</span></p>
<p><strong>  <span style="text-decoration:underline;">To see contents of Repository  </span></strong></p>
<p>  Right click any item in SVN client, choose ‘<span style="text-decoration:underline;">Repo browser</span>’</p>
<p> <strong> How to <span style="text-decoration:underline;">tag</span></strong></p>
<p>  •<strong><span style="text-decoration:underline;">svn copy</span></strong><span style="text-decoration:underline;"> comes to the rescue</span>. If you want to create a snapshot of /calc/trunk exactly as it looks in the HEAD revision, then make a copy of it: •$ svn copy http://svn.example.com/repos/calc/trunk \ http://svn.example.com/repos/calc/tags/release-1.0 \ -m &#8220;Tagging the 1.0 release of the &#8216;calc&#8217; project.&#8221; Committed revision 351. This example assumes that a /calc/tags directory already exists. (If it doesn&#8217;t, see <a title="svn mkdir" href="/re18.html" target="_parent">svn mkdir</a>).</p>
<p>  <strong>Authorization</strong></p>
<p>  •SVN can authorize <span style="text-decoration:underline;">a person to read</span>, <span style="text-decoration:underline;">or read </span><span style="text-decoration:underline;">and write</span> , <span style="text-decoration:underline;">or not read any particular folder </span>•So the SVN Admin will be assigning <span style="text-decoration:underline;">folder </span><span style="text-decoration:underline;">rights to different roles</span> so that each user of a <span style="text-decoration:underline;">certain role only gets the file rights that is </span><span style="text-decoration:underline;">required for him </span></p>
<p>  <strong>Glossary of common terms</strong></p>
<p><strong>– BASE revision</strong></p>
<p>  •This is the <span style="text-decoration:underline;">revision</span> the file or folder was in, <span style="text-decoration:underline;">when the last checkout, update or commit was </span><span style="text-decoration:underline;">run</span> .</p>
<p> <strong>- Branch</strong></p>
<p>  You can create a <span style="text-decoration:underline;">branch</span> off the <span style="text-decoration:underline;">main development line</span> so as to develop a new feature without rendering the main line unstable. Or you can branch a <span style="text-decoration:underline;">stable release to which you make only </span><span style="text-decoration:underline;">bugfixes</span>, while <span style="text-decoration:underline;">new developments take place on the unstable trunk</span>. In Subversion a branch is implemented as a “cheap copy”.</p>
<p><strong> - Blame</strong></p>
<p>  •This command is for <span style="text-decoration:underline;">text files only</span>, and it <span style="text-decoration:underline;">annotates every line </span>to show the <span style="text-decoration:underline;">repository </span><span style="text-decoration:underline;">revision</span> in which it was <span style="text-decoration:underline;">last changed</span>, and the <span style="text-decoration:underline;">author</span> who made that change. Our GUI implementation is called <span style="text-decoration:underline;">TortoiseBlame</span> and it also shows the commit date/time and the log message when you hover the mouse of the revision number.</p>
<p><strong>- Commit</strong></p>
<p>  •This Subversion command is used to <span style="text-decoration:underline;">pass the </span><span style="text-decoration:underline;">changes in your local working copy</span> back into the repository, creating a <span style="text-decoration:underline;">new repository </span><span style="text-decoration:underline;">revision. </span></p>
<p>  &#8211; <strong>BDB</strong></p>
<p>  Berkeley DB. A well tested database backend for repositories, that <span style="text-decoration:underline;">cannot be used on network </span><span style="text-decoration:underline;">shares</span>. Default for pre 1.2 repositories</p>
<p><strong>- Copy</strong></p>
<p>  In a Subversion repository you can <span style="text-decoration:underline;">create a copy of </span><span style="text-decoration:underline;">a single file or an entire tree</span>. These are implemented as “cheap copies” which act a bit like a link to the original in that they take up almost no space. Making a copy <span style="text-decoration:underline;">preserves the history of the </span><span style="text-decoration:underline;">item in the copy</span>, so you can trace changes made before the copy was made. <em>To ‘tag’ a version , create a SVN folder and use </em><em>‘Copy’ to copy the snapshot to the new folder</em></p>
<p><strong>- Export</strong></p>
<p>  •This command produces a <span style="text-decoration:underline;">copy of a versioned </span><span style="text-decoration:underline;">folder</span>, just like a working copy, but <span style="text-decoration:underline;">without the </span><span style="text-decoration:underline;">local .svn folders</span>.</p>
<p> <strong>-FSFS</strong></p>
<p>  •FS File system. A <span style="text-decoration:underline;">proprietary Subversion file </span><span style="text-decoration:underline;">system backend</span> for repositories. Can be used on network shares. Default for 1.2 and newer repositories.</p>
<p>  &#8211; <strong>Diff</strong></p>
<p><strong>  </strong>•Shorthand for “<span style="text-decoration:underline;">Show Differences</span>”. Very useful when you want to see exactly what changes have been made.</p>
<p> -<strong> HEAD revision</strong></p>
<p>  The latest revision of a file or folder in the <em>repository</em>.</p>
<p><strong>  &#8211; Patch</strong></p>
<p>  If a working copy has <span style="text-decoration:underline;">changes to text files</span> only, it is possible to use Subversion&#8217;s <span style="text-decoration:underline;">Diff command</span> to <span style="text-decoration:underline;">generate a single </span><span style="text-decoration:underline;">file summary of those changes in Unified Diff format</span>. A file of this type is often referred to as a <span style="text-decoration:underline;">“Patch”,</span> and it can be <span style="text-decoration:underline;">emailed</span> to someone else (or to a mailing list) and <span style="text-decoration:underline;">applied to another working copy</span>. <em><span style="text-decoration:underline;">Someone without commit </span></em><em><span style="text-decoration:underline;">access can make changes and submit a patch file for an authorized committer to apply</span></em>. <em>Or if you are unsure </em><em>about a change you can submit a patch for others to review</em>.</p>
<p> <strong> &#8211; Merge</strong></p>
<p>  –The process by which <span style="text-decoration:underline;">changes from the repository </span><span style="text-decoration:underline;">are added to your working copy without disrupting </span><span style="text-decoration:underline;">any changes you have already made locally</span>. Sometimes these changes cannot be reconciled automatically and the working copy is said to be in conflict. –Merging <span style="text-decoration:underline;">happens automatically when you update </span><span style="text-decoration:underline;">your working copy</span>. <em>You can also merge specific </em><em>changes from another branch using TortoiseSVN&#8217;s </em><em>Merge command</em>. •</p>
<p>  <strong>- Switch</strong></p>
<p>  •Just as “Update-to-revision” changes the time window of a working copy to look at a different point in history, so “Switch” changes the space window of a working copy so that <span style="text-decoration:underline;">it points to a </span><span style="text-decoration:underline;">different part of the repository</span>. <span style="text-decoration:underline;">It is particularly </span><span style="text-decoration:underline;">useful when working on trunk and branches</span> where only a few files differ. You can <span style="text-decoration:underline;">switch </span><span style="text-decoration:underline;">your working copy between the two</span> and <span style="text-decoration:underline;">only </span><span style="text-decoration:underline;">the changed files will be transferred</span>.</p>
<p><strong>  &#8211; Update</strong></p>
<p>  This Subversion command <span style="text-decoration:underline;">pulls down the latest changes from the repository</span> into your <span style="text-decoration:underline;">working copy</span>, <span style="text-decoration:underline;">merging any changes made by others with local changes</span> in the working copy</p>
<p>  <strong>– Working Copy</strong></p>
<p>  •This is your local “sandbox”, the area where you work on the versioned files, and it normally resides on your local hard disk. You create a working copy by doing a <span style="text-decoration:underline;">“Checkout” </span><span style="text-decoration:underline;">from a repository</span>, and you <span style="text-decoration:underline;">feed your changes </span><span style="text-decoration:underline;">back</span> into the repository using “Commit”. •</p>
<p><strong>  &#8211; Property</strong></p>
<p>  In addition to versioning your directories and files, Subversion allows you to <span style="text-decoration:underline;">add versioned metadata &#8211; referred to as </span><span style="text-decoration:underline;">“properties” to each of your versioned directories and files</span>. Each property has a <span style="text-decoration:underline;">name and a value</span>, rather like a <span style="text-decoration:underline;">registry key</span>. Subversion has some special properties which it uses internally, such as svn:eol-style. TortoiseSVN has some too, such as tsvn:logminsize. You can <span style="text-decoration:underline;">add your own properties with any name and value you choose</span></p>
<p> <strong> &#8211; Import</strong></p>
<p>  •Subversion command to <span style="text-decoration:underline;">import an entire folder </span><span style="text-decoration:underline;">hierarchy into the repository</span> in a single revision</p>
<p> <strong> &#8211; Relocate</strong></p>
<p>  •If your repository moves, perhaps because you have moved it to a <span style="text-decoration:underline;">different directory on your server</span>, or the <span style="text-decoration:underline;">server domain name has changed</span>, you need to “relocate” your working copy so that its repository URLs point to the new location. •Note: you should only use this command if your <span style="text-decoration:underline;">working copy is referring to the same location in the </span><span style="text-decoration:underline;">same repository</span>, but the <span style="text-decoration:underline;">repository itself has moved</span>. In any <span style="text-decoration:underline;">other circumstance</span> you probably need the <span style="text-decoration:underline;">“Switch” command</span> instead.</p>
<p>  <strong>- Revision</strong></p>
<p>  •<span style="text-decoration:underline;">Every time you commit</span> a set of changes, you create one new “revision” in the repository. Each revision represents the <span style="text-decoration:underline;">state of the </span><span style="text-decoration:underline;">repository tree at a certain point</span> in its history. If you want to go back in time you can examine the repository as it was at revision N.</p>
<p> <strong> &#8211; Lock</strong></p>
<p>  When you take out a lock on a versioned item, you mark it in the repository as un-committable, except from the working copy where the lock was taken out.</p>
<p><strong>  &#8211; Cleanup</strong></p>
<p>  To quote from the Subversion book: “ Recursively clean up the working copy, removing locks and resuming unfinished operations. If you ever get a <span style="text-decoration:underline;">working copy locked error</span>, run this command to <span style="text-decoration:underline;">remove stale locks</span> and <span style="text-decoration:underline;">get your working copy into a usable state again</span>. ” Note that in this context “lock” refers to local file system locking, not repository locking.</p>
<p><strong><em>Notes :-</em></strong></p>
<p><strong>  Integration with Bug Tracking</strong></p>
<p>  •To tag each commit to a Bug ID, you can set one these one of these properties while configuring Subversion :- •bugtraq:url : Set this property to the url of your bugtracking tool. It must be properly URI encoded and it has to contain %BUGID% •http://issues.tortoisesvn.net/?do=details&amp;id=%BUGID%</p>
<p>  •bugtraq:warnifnoissue •Set this to true, if you want TortoiseSVN to warn you because of an empty issuenumber textfield. Valid values are true/false. <em>If not </em><em>defined, false is assumed.</em> •</p>
<p>  •bugtraq:logregex •<em>This property activates the Bugtracking </em><em>System in Regex mode. </em>It contains one or two regular expressions, separated by a newline •If only one expression is set, then the bare bug ID&#8217;s must be matched in the groups of the regex string. Example: [Ii]ssue(?:s)? #?(\d+)</p>
<p>  <strong>Tools to integrate with VS.NET</strong></p>
<p>  •AnkhSVN •VisualSVN</p>
<p><strong>  Resources</strong></p>
<p>  •Please read the <span style="text-decoration:underline;">Tortoise SVN Help</span> which will be in the client •You could also read the <span style="text-decoration:underline;">SVN Book</span>  in the site http://svnbook.red-bean.com/</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rchakra.wordpress.com/58/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rchakra.wordpress.com/58/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/rchakra.wordpress.com/58/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/rchakra.wordpress.com/58/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/rchakra.wordpress.com/58/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/rchakra.wordpress.com/58/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/rchakra.wordpress.com/58/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/rchakra.wordpress.com/58/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/rchakra.wordpress.com/58/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/rchakra.wordpress.com/58/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/rchakra.wordpress.com/58/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/rchakra.wordpress.com/58/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/rchakra.wordpress.com/58/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/rchakra.wordpress.com/58/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rchakra.wordpress.com&amp;blog=7328272&amp;post=58&amp;subd=rchakra&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://rchakra.wordpress.com/2009/10/28/my-notes-on-how-to-use-tortoise-svn-client-for-subversion/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/8a557a272cb8fcd5dbdd45d461cb5097?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">rchakra</media:title>
		</media:content>
	</item>
		<item>
		<title>Subversion administration &#8211; way i do it</title>
		<link>http://rchakra.wordpress.com/2009/10/28/subversion-administration-way-i-do-it/</link>
		<comments>http://rchakra.wordpress.com/2009/10/28/subversion-administration-way-i-do-it/#comments</comments>
		<pubDate>Wed, 28 Oct 2009 07:06:42 +0000</pubDate>
		<dc:creator>rchakra</dc:creator>
				<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://rchakra.wordpress.com/?p=56</guid>
		<description><![CDATA[  How to create a Subversion repository •Open a command prompt •Navigate to drive on which you wish to create the Subversion repository (say D:\) •Create an empty folder D:\SVNx •Create another folder within it called ‘MyWebApp’ •Go to D:\SVNx and type ‘svnadmin create &#8211; -fs-type fsfs MyWebApp’  •Now go into the new directory ‘myWebApp’ [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rchakra.wordpress.com&amp;blog=7328272&amp;post=56&amp;subd=rchakra&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><strong>  How to create a Subversion repository</strong></p>
<p>•Open a command prompt</p>
<p>•Navigate to drive on which you wish to create the Subversion repository (say D:\)</p>
<p>•Create an empty folder D:\SVNx</p>
<p>•Create another folder within it called ‘MyWebApp’</p>
<p>•Go to D:\SVNx and type ‘svnadmin create &#8211; -fs-type fsfs MyWebApp’ </p>
<p>•Now go into the new directory ‘myWebApp’</p>
<p>•See the files created by Subversion (dir)</p>
<p>• Go into the sub folder ‘conf’</p>
<p>•Edit the file titled ‘svnserve.conf’</p>
<p>•Uncomment the lines ‘anon-access’, ‘auth-access’ and ‘password-db’. Save the file</p>
<p>•Edit the file ‘passwd’</p>
<p>•Uncomment the 2-user/password combinations for harry and sally</p>
<p>•Change the user name (harry and sally) to the user names you wish to assign for the project to the developers in the team</p>
<p>•Change the passwords as required</p>
<p>•Save the file</p>
<p>•Create a batch file called ‘StartSVN.bat’</p>
<p>•Key in the value ‘svnserve.exe –d –r  D:/SVNx/myWebApp -–listen-port 3691’</p>
<p>•Run this batch file</p>
<p>•Now the Subversion server is up and running</p>
<p>•Now go to the folder, which has the project to be ‘imported’ into the above repository</p>
<p>•Right click that folder and choose the ‘Import’ option</p>
<p>•Key in ‘svn://localhost:3691/myWebApp’ in the URL field of the dialog box (Replace local host with the name or IP address of the server)</p>
<p>•Folders will now get imported into the Repository</p>
<ul>
<li>  To take hot backups use Svnadmin –hotcopy SourceRepositoryFolder BackupFolder</li>
</ul>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rchakra.wordpress.com/56/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rchakra.wordpress.com/56/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/rchakra.wordpress.com/56/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/rchakra.wordpress.com/56/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/rchakra.wordpress.com/56/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/rchakra.wordpress.com/56/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/rchakra.wordpress.com/56/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/rchakra.wordpress.com/56/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/rchakra.wordpress.com/56/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/rchakra.wordpress.com/56/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/rchakra.wordpress.com/56/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/rchakra.wordpress.com/56/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/rchakra.wordpress.com/56/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/rchakra.wordpress.com/56/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rchakra.wordpress.com&amp;blog=7328272&amp;post=56&amp;subd=rchakra&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://rchakra.wordpress.com/2009/10/28/subversion-administration-way-i-do-it/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/8a557a272cb8fcd5dbdd45d461cb5097?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">rchakra</media:title>
		</media:content>
	</item>
		<item>
		<title>Notes on the MVP Pattern</title>
		<link>http://rchakra.wordpress.com/2009/09/07/notes-on-the-mvp-pattern/</link>
		<comments>http://rchakra.wordpress.com/2009/09/07/notes-on-the-mvp-pattern/#comments</comments>
		<pubDate>Mon, 07 Sep 2009 06:26:05 +0000</pubDate>
		<dc:creator>rchakra</dc:creator>
				<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://rchakra.wordpress.com/?p=30</guid>
		<description><![CDATA[Assuming we had a form called the &#8216;ProductMaster&#8217; in an application called JMS, this is how one could implement a MVP pattern &#8230;. 1)     have 3 projects – One is the UI project (JMS.UI) 2)     One is the Business Layer project (JMS.BL) 3)     One is the Presentation layer project (JMS.PL) 4)     In the UI, have a class [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rchakra.wordpress.com&amp;blog=7328272&amp;post=30&amp;subd=rchakra&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Assuming we had a form called the &#8216;ProductMaster&#8217; in an application called JMS, this is how one could implement a MVP pattern &#8230;.</p>
<p>1)     have 3 projects – One is the UI project (JMS.UI)</p>
<p>2)     One is the Business Layer project (JMS.BL)</p>
<p>3)     One is the Presentation layer project (JMS.PL)</p>
<p>4)     In the UI, have a class like ProductMaster.aspx</p>
<p>5)     In the Business Layer, add a class for each business object – like Product.cs , which will have all properties with get and set and Save / Fetch methods</p>
<p>6)     In the presentation layer , add a class called ProductMasterPresenter.cs (or ProductEditor.cs)</p>
<p>7)     In this ProductMasterPresenter.cs, reference the BL</p>
<p>8)     Create a public interface like IproductMasterView , with the properties of the business classes needed by the ProductMaster and the EVENT of the Product class (like Save). (event EventHandler&lt;EventArgs&gt; Save;)</p>
<p>9)     In the ProductMasterPresenter class, create an instance of this interface as mView</p>
<p>10) In the constructor of this ProductMasterPresenter class, accept the interface as a parameter (IProductMasterView view)</p>
<p>11) In the constructor of step 10, Set the local instance of the view (mView) to the view that was received in the constructor :-</p>
<p>this.mView = view;</p>
<p> </p>
<p>12) Next in the same constructor, call the Initialize method, in which you wire the Save event to the event handler. this.mView.Save += new EventHandler&lt;EventArgs&gt;(mView_Save);</p>
<p>13) Implement the mView_Save(object sender, EventArgs e) handler by creating an instance of the Product class and setting the properties from the view and saving it .</p>
<p> </p>
<p>product = new Product();          product.Description = this.mView.ProductDescription;               product.ID = this.mView.ProductID;                product.Save();</p>
<p> </p>
<p>14) In the ProductMaster.aspx.cs, reference the BL and the PL</p>
<p>15)  In the page load event or page init event , create an instance of the Presenter class , passing itself , the form itself to the constructor : this.mPresenter = new ProductMasterPresenter(this);</p>
<p>16)  In the ProductMaster.aspx.cs, implement the Presenter interface defined in the Presenter class :- public partial class ProductEditor : System.Web.UI.Page, IproductMasterView</p>
<p>17) Implement the properties of the IproductMasterView interface, by setting the text box values to them &#8211; public int ProductID</p>
<p>    {</p>
<p>        get { return Convert.ToInt32(this.txtID.Text); }</p>
<p>    }</p>
<p>18)  In the btn_Save click event of the UI form, call this handler this.Save(this, EventArgs.Empty);</p>
<p>19) Declare an eventhanlder here</p>
<p>public event EventHandler&lt;EventArgs&gt; Save;</p>
<p> </p>
<p>20) Since there is an eventhandler in the Presentation class for this Save event, it will be invoked , which will then call the business class save method. Since the view (UI) was already passed to the presenter in the Load event , and that UI’s save event was wired to the Save event handler in the presentation class, when the Save event occurs in the UI, the save event handler of the presentation class is invoked.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rchakra.wordpress.com/30/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rchakra.wordpress.com/30/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/rchakra.wordpress.com/30/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/rchakra.wordpress.com/30/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/rchakra.wordpress.com/30/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/rchakra.wordpress.com/30/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/rchakra.wordpress.com/30/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/rchakra.wordpress.com/30/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/rchakra.wordpress.com/30/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/rchakra.wordpress.com/30/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/rchakra.wordpress.com/30/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/rchakra.wordpress.com/30/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/rchakra.wordpress.com/30/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/rchakra.wordpress.com/30/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rchakra.wordpress.com&amp;blog=7328272&amp;post=30&amp;subd=rchakra&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://rchakra.wordpress.com/2009/09/07/notes-on-the-mvp-pattern/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/8a557a272cb8fcd5dbdd45d461cb5097?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">rchakra</media:title>
		</media:content>
	</item>
		<item>
		<title>My first brush with the SQL Execution Plan</title>
		<link>http://rchakra.wordpress.com/2009/09/07/my-first-brush-with-the-sql-execution-plan/</link>
		<comments>http://rchakra.wordpress.com/2009/09/07/my-first-brush-with-the-sql-execution-plan/#comments</comments>
		<pubDate>Mon, 07 Sep 2009 06:19:39 +0000</pubDate>
		<dc:creator>rchakra</dc:creator>
				<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://rchakra.wordpress.com/2009/09/07/my-first-brush-with-the-sql-execution-plan/</guid>
		<description><![CDATA[Please read this reply from Itzik Ben Gan to my question on a forum. Hi Chakravarthy, That’s because the tables are very small. If you examine the execution plans of the UPDATE statements, you will see that SQL Server decides to use a full scan of the clustered index (essentially a table scan), instead of [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rchakra.wordpress.com&amp;blog=7328272&amp;post=28&amp;subd=rchakra&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Please read this reply from Itzik Ben Gan to my question on a forum. </p>
<p>Hi Chakravarthy,</p>
<p>That’s because the tables are very small. If you examine the execution plans of the UPDATE statements, you will see that SQL Server decides to use a full scan of the clustered index (essentially a table scan), instead of using the nonclustered index to support the filter. To “fix” this, you can use a hint to force SQL Server to use the index:</p>
<p>&#8211; Connection 1</p>
<p>BEGIN TRAN</p>
<p>UPDATE dbo.T1 SET col2 = col2 + &#8216;A&#8217;</p>
<p>FROM dbo.T1 WITH(index = idx_col1)</p>
<p>WHERE col1 = 101;</p>
<p>&#8211; Connection 2</p>
<p>BEGIN TRAN</p>
<p>UPDATE dbo.T1 SET col2 = col2 + &#8216;A&#8217;</p>
<p>FROM dbo.T1 WITH(index = idx_col1)</p>
<p>WHERE col1 = 102;</p>
<p>Of course, when the tables are bigger, there’s no need to use the hint since SQL Server will use the index (assuming it’s selective enough).</p>
<p>Take care,</p>
<p>Itzik</p>
<p>www.SolidQualityLearning.com</p>
<p>www.insidetsql.com</p>
<p>From: Chakravarthy [mailto:chakra@eldora-software.com]<br />
Sent: Wednesday, May 02, 2007 8:18 PM<br />
To: Itzik Ben-Gan<br />
Subject: Self deadlocks</p>
<p>Mr. Itzik,</p>
<p>I have been browsing through your 2 books on T-SQL Querying and Programming for SQL 2005, and appreciate their quality.</p>
<p>However, there is a subtle variation of the Self deadlock scenario that i wanted to present to you, with your feedback if possible :-</p>
<p>1) I first create the 2 tables as in Listing 9-1 of your SQL Programming book (Appendix A below ) </p>
<p>2) I then run this in one Query screen :</p>
<p>BEGIN TRAN</p>
<p>UPDATE dbo.T1 SET col2 = col2 + &#8216;A&#8217; WHERE col1 = 101;</p>
<p>3) I run this in ANOTHER query screen  (same Table, different row) :-</p>
<p>BEGIN TRAN</p>
<p>UPDATE dbo.T1 SET col2 = col2 + &#8216;A&#8217; WHERE col1 = 102;</p>
<p>THIS IS ENDLESSLY WAITING</p>
<p>4) I then ROLLBACK BOTH and apply indexes as you have suggested :-</p>
<p>CREATE INDEX idx_col1 ON dbo.T1(col1);</p>
<p>CREATE INDEX idx_col1 ON dbo.T2(col1);</p>
<p>GO</p>
<p>5) I AGAIN try steps 2 and 3 above,  AND Step 3 continues to WAIT. Can you try this and tell me what you think ?</p>
<p>Regards,</p>
<p>Chakravarthy.</p>
<p>Appendix A</p>
<p>SET NOCOUNT ON;</p>
<p>IF DB_ID(&#8216;testdb&#8217;) IS NULL</p>
<p>CREATE DATABASE testdb;</p>
<p>GO</p>
<p>USE testdb;</p>
<p>GO</p>
<p>IF OBJECT_ID(&#8216;dbo.T1&#8242;) IS NOT NULL</p>
<p>DROP TABLE dbo.T1;</p>
<p>IF OBJECT_ID(&#8216;dbo.T2&#8242;) IS NOT NULL</p>
<p>DROP TABLE dbo.T2;</p>
<p>GO</p>
<p>CREATE TABLE dbo.T1</p>
<p>(</p>
<p>keycol INT NOT NULL PRIMARY KEY,</p>
<p>col1 INT NOT NULL,</p>
<p>col2 VARCHAR(50) NOT NULL</p>
<p>);</p>
<p>INSERT INTO dbo.T1(keycol, col1, col2) VALUES (1,101,&#8217;A');</p>
<p>INSERT INTO dbo.T1(keycol, col1, col2) VALUES (2,102,&#8217;B');</p>
<p>INSERT INTO dbo.T1(keycol, col1, col2) VALUES (3,103,&#8217;C');</p>
<p>CREATE TABLE dbo.T2</p>
<p>(</p>
<p>keycol INT NOT NULL PRIMARY KEY,</p>
<p>col1 INT NOT NULL,</p>
<p>col2 VARCHAR(50) NOT NULL</p>
<p>);</p>
<p>INSERT INTO dbo.T2(keycol, col1, col2) VALUES (1,201,&#8217;X');</p>
<p>INSERT INTO dbo.T2(keycol, col1, col2) VALUES (2,202,&#8217;Y');</p>
<p>INSERT INTO dbo.T2(keycol, col1, col2) VALUES (3,203,&#8217;Z');</p>
<p>GO</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rchakra.wordpress.com/28/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rchakra.wordpress.com/28/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/rchakra.wordpress.com/28/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/rchakra.wordpress.com/28/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/rchakra.wordpress.com/28/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/rchakra.wordpress.com/28/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/rchakra.wordpress.com/28/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/rchakra.wordpress.com/28/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/rchakra.wordpress.com/28/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/rchakra.wordpress.com/28/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/rchakra.wordpress.com/28/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/rchakra.wordpress.com/28/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/rchakra.wordpress.com/28/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/rchakra.wordpress.com/28/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rchakra.wordpress.com&amp;blog=7328272&amp;post=28&amp;subd=rchakra&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://rchakra.wordpress.com/2009/09/07/my-first-brush-with-the-sql-execution-plan/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/8a557a272cb8fcd5dbdd45d461cb5097?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">rchakra</media:title>
		</media:content>
	</item>
		<item>
		<title>VSS versus SVN</title>
		<link>http://rchakra.wordpress.com/2009/09/05/vss-versus-svn/</link>
		<comments>http://rchakra.wordpress.com/2009/09/05/vss-versus-svn/#comments</comments>
		<pubDate>Sat, 05 Sep 2009 17:21:13 +0000</pubDate>
		<dc:creator>rchakra</dc:creator>
				<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://rchakra.wordpress.com/?p=17</guid>
		<description><![CDATA[VSS compared to SVN Features by default configuration&#8230;.. VSS features SVN Features         VSS database SVN repository   VSS databases file paths like \server\share\srcsafe.ini, c:\vss\db\srcsafe.ini Subversion URL like svn://192.168.1.139/BCG/Trunk   Working folder Working copy   Do a checkout to lock a file so that it can be edited Do a checkout to [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rchakra.wordpress.com&amp;blog=7328272&amp;post=17&amp;subd=rchakra&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<h1>VSS compared to SVN</h1>
<p>Features by <strong><em>default</em></strong> <strong><em>configuration</em></strong>&#8230;..</p>
<table border="1" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td width="242" valign="top">
<h2><strong>VSS features</strong></h2>
</td>
<td width="291" valign="top">
<h2><strong>SVN Features</strong></h2>
</td>
<td width="57" valign="top">
<h2><strong> </strong></h2>
</td>
</tr>
<tr>
<td width="242" valign="top"> </td>
<td width="291" valign="top"> </td>
<td width="57" valign="top"> </td>
</tr>
<tr>
<td width="242" valign="top">VSS database</td>
<td width="291" valign="top">SVN repository</td>
<td width="57" valign="top"> </td>
</tr>
<tr>
<td width="242" valign="top">VSS databases file paths like <code>\server\share\srcsafe.ini</code>, <code>c:\vss\db\srcsafe.ini</code></td>
<td width="291" valign="top">Subversion URL like svn://192.168.1.139/BCG/Trunk</td>
<td width="57" valign="top"> </td>
</tr>
<tr>
<td width="242" valign="top">Working folder</td>
<td width="291" valign="top">Working copy</td>
<td width="57" valign="top"> </td>
</tr>
<tr>
<td width="242" valign="top">Do a checkout to lock a file so that it can be edited</td>
<td width="291" valign="top">Do a <em>checkout</em> to create a <em>working copy the first time</em></td>
<td width="57" valign="top"> </td>
</tr>
<tr>
<td width="242" valign="top">When you&#8217;re finished making your changes, you <span style="text-decoration:underline;">check them in</span>.</td>
<td width="291" valign="top">When you&#8217;re ready to publish the changes, you <em><span style="text-decoration:underline;">commit</span></em><span style="text-decoration:underline;"> </span>them</td>
<td width="57" valign="top"> </td>
</tr>
<tr>
<td width="242" valign="top"> </td>
<td width="291" valign="top">To get the latest changes, such as what other people have committed, you must do an <em>update</em></td>
<td width="57" valign="top"> </td>
</tr>
<tr>
<td width="242" valign="top"> </td>
<td width="291" valign="top">Cannot do an update till you have checked out</td>
<td width="57" valign="top"> </td>
</tr>
<tr>
<td width="242" valign="top">Only one user can work on a file at any one time (Please refer comment below on this item)</td>
<td width="291" valign="top">Many users can be working on a file concurrently unless the file is specifically locked</td>
<td width="57" valign="top"> </td>
</tr>
<tr>
<td width="242" valign="top"> </td>
<td width="291" valign="top">Can merge a file if there is a conflict between working copy and repository copy</td>
<td width="57" valign="top"> </td>
</tr>
<tr>
<td width="242" valign="top">Undo Checkout</td>
<td width="291" valign="top">Revert</td>
<td width="57" valign="top"> </td>
</tr>
<tr>
<td width="242" valign="top">VSS: Get Latest Version &amp; Set Working Folder</td>
<td width="291" valign="top">Subversion Checkout</td>
<td width="57" valign="top"> </td>
</tr>
<tr>
<td width="242" valign="top">VSS being a stand-alone application</td>
<td width="291" valign="top">TortoiseSVN integrates with explorer</td>
<td width="57" valign="top"> </td>
</tr>
<tr>
<td width="242" valign="top">Browsing tree in VSS</td>
<td width="291" valign="top">Repo-browser</td>
<td width="57" valign="top"> </td>
</tr>
<tr>
<td width="242" valign="top">SourceSafe&#8217;s <code>vssver.scc</code> files</td>
<td width="291" valign="top">TortoiseSVN identifies working copies through hidden folders named <code>.SVN</code></td>
<td width="57" valign="top"> </td>
</tr>
<tr>
<td width="242" valign="top">VSS you can have multiple projects share the same working folder</td>
<td width="291" valign="top">You <span style="text-decoration:underline;">can&#8217;t</span> checkout multiple projects from Subversion to the same directory</td>
<td width="57" valign="top"> </td>
</tr>
<tr>
<td width="242" valign="top">Choose the difference option in VSS client</td>
<td width="291" valign="top">line-by-line differences by right-clicking file and selecting <code>TortoiseSVN &gt; Diff</code></td>
<td width="57" valign="top"> </td>
</tr>
<tr>
<td width="242" valign="top">Check in dialog</td>
<td width="291" valign="top">Commit dialog (Enter Log Message)</td>
<td width="57" valign="top"> </td>
</tr>
<tr>
<td width="242" valign="top">Always communicating with the server, so doing a diff goes against the latest files in the database</td>
<td width="291" valign="top">Doesn&#8217;t require constant communication with a repository, instead the last files you got from it are stored in the hidden folder (<code>.svn</code> in most cases) which is known as your working base</td>
<td width="57" valign="top"> </td>
</tr>
<tr>
<td width="242" valign="top">
<h2> </h2>
</td>
<td width="291" valign="top">Update periodically so your <em>working base</em> is up to date</td>
<td width="57" valign="top"> </td>
</tr>
<tr>
<td width="242" valign="top">Each individual file has a version number</td>
<td width="291" valign="top">Every time someone commits a change to the repository, revision number of entire repository is incremented</td>
<td width="57" valign="top"> </td>
</tr>
<tr>
<td width="242" valign="top">
<h2> </h2>
</td>
<td width="291" valign="top">Subversion simply won&#8217;t let you commit if someone else has committed before you</td>
<td width="57" valign="top"> </td>
</tr>
<tr>
<td width="242" valign="top">Destroying a file in VSS will cause it to be irrevocably lost to the database</td>
<td width="291" valign="top">There is no permanent destroy and deleted files are always recoverable by getting an earlier version</td>
<td width="57" valign="top"> </td>
</tr>
<tr>
<td width="242" valign="top">
<h2> </h2>
</td>
<td width="291" valign="top">If you delete a file using the Windows delete will bring the file back when you next update.</td>
<td width="57" valign="top"> </td>
</tr>
<tr>
<td width="242" valign="top">
<h2> </h2>
</td>
<td width="291" valign="top">Moving files and folders: First, make sure where you&#8217;re moving them to is <em>already</em> versioned. That is, if the folder you&#8217;re moving them to isn&#8217;t already in the repository, then add it. Then to do the move, right-drag (click and hold the <em>right</em> mouse button) the item(s) to the new folder. When you let the mouse button up, select <code>Move versioned files here</code> from the context menu.</td>
<td width="57" valign="top"> </td>
</tr>
<tr>
<td width="242" valign="top">
<h2> </h2>
</td>
<td width="291" valign="top">To undo a rename or move <em>before committing</em>, select <code>TortoiseSVN &gt; Revert</code> from the folder above <em>both</em> locations. Make sure to check the boxes next to both the deletes and the adds before clicking <code>OK</code>.</td>
<td width="57" valign="top"> </td>
</tr>
<tr>
<td width="242" valign="top">
<h2> </h2>
</td>
<td width="291" valign="top">When you make a small change to a large binary file, the commit doesn&#8217;t take very long because TortoiseSVN just tells the Subversion repository what the changed bytes are.</td>
<td width="57" valign="top"> </td>
</tr>
</tbody>
</table>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rchakra.wordpress.com/17/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rchakra.wordpress.com/17/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/rchakra.wordpress.com/17/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/rchakra.wordpress.com/17/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/rchakra.wordpress.com/17/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/rchakra.wordpress.com/17/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/rchakra.wordpress.com/17/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/rchakra.wordpress.com/17/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/rchakra.wordpress.com/17/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/rchakra.wordpress.com/17/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/rchakra.wordpress.com/17/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/rchakra.wordpress.com/17/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/rchakra.wordpress.com/17/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/rchakra.wordpress.com/17/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rchakra.wordpress.com&amp;blog=7328272&amp;post=17&amp;subd=rchakra&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://rchakra.wordpress.com/2009/09/05/vss-versus-svn/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/8a557a272cb8fcd5dbdd45d461cb5097?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">rchakra</media:title>
		</media:content>
	</item>
	</channel>
</rss>
