<?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>soledad penadés &#187; subversion</title>
	<atom:link href="http://soledadpenades.com/tag/subversion/feed/" rel="self" type="application/rss+xml" />
	<link>http://soledadpenades.com</link>
	<description>repeat 4[fd 100 rt 90]</description>
	<lastBuildDate>Wed, 25 Apr 2012 21:10:33 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Diff&#8217;ing with RapidSVN</title>
		<link>http://soledadpenades.com/2010/06/29/diffing-with-rapidsvn/</link>
		<comments>http://soledadpenades.com/2010/06/29/diffing-with-rapidsvn/#comments</comments>
		<pubDate>Tue, 29 Jun 2010 11:29:38 +0000</pubDate>
		<dc:creator>sole</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[eclipse]]></category>
		<category><![CDATA[meld]]></category>
		<category><![CDATA[rapidsvn]]></category>
		<category><![CDATA[subversion]]></category>
		<category><![CDATA[svn]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://soledadpenades.com/?p=2695</guid>
		<description><![CDATA[I thought I had to enter &#8220;diff&#8221; in the diff tool field, but I was wrong: it didn&#8217;t work. Apparently RapidSVN expects a graphical application instead of a text-mode application that runs on a terminal. But fear not! There&#8217;s an application for this. It&#8217;s called meld. So&#8230; sudo apt-get install meld And in RapidSVN &#8594; [...]]]></description>
			<content:encoded><![CDATA[<p>I thought I had to enter &#8220;diff&#8221; in the diff tool field, but I was wrong: it didn&#8217;t work. Apparently <a href="http://www.rapidsvn.org/">RapidSVN</a> expects a graphical application instead of a text-mode application that runs on a terminal.</p>
<p>But fear not! There&#8217;s an application for this. It&#8217;s called <a href="http://meld.sourceforge.net/">meld</a>.</p>
<p>So&#8230;</p>
<div class="syhi_block"><code><span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #c20cb9; font-weight: bold;">apt-get</span> <span style="color: #c20cb9; font-weight: bold;">install</span> meld</code></div>
<p>And in <em>RapidSVN &rarr; Preferences &rarr; Programs &rarr; Diff Tool</em> simply enter <strong>meld</strong>. Now you should be able to right click a file and select the <em>Diff&#8230;</em> flavour you prefer (to Base, to HEAD or to something else), and get the diff between the versions!</p>
<p>You might remember I always say I tend to use the command line for dealing with SVN, but sometimes I feel lazy (specially when dealing with many files at the same time), and RapidSVN is very handy to get a quick overview of what&#8217;s changed. Besides, it doesn&#8217;t break randomly like Subclipse/Subversive whenever Eclipse is updated, and can be used outside Eclipse, for non-Eclipse projects. Thanks to <a href="http://mrdoob.com">mrdoob</a> for the cool app recommendation :)</p>
 <p><a href="http://soledadpenades.com/?flattrss_redirect&amp;id=2695&amp;md5=f59b88ab6d138ef092dccd5ceabd719b" title="Flattr" target="_blank"><img src="http://soledadpenades.com/wp-content/plugins/flattr/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://soledadpenades.com/2010/06/29/diffing-with-rapidsvn/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		<atom:link rel="payment" href="https://flattr.com/submit/auto?user_id=8399&amp;amp;url=http%3A%2F%2Fsoledadpenades.com%2F2010%2F06%2F29%2Fdiffing-with-rapidsvn%2F&amp;amp;language=en_GB&amp;amp;category=text&amp;amp;title=Diff%26%238217%3Bing+with+RapidSVN&amp;amp;description=I+thought+I+had+to+enter+%22diff%22+in+the+diff+tool+field%2C+but+I+was+wrong%3A+it+didn%27t+work.+Apparently+RapidSVN+expects+a+graphical+application+instead+of+a+text-mode+application+that+runs+on+a+terminal.%0D%0A%0D%0ABut+fear+not%21+There%27s+an+application+for+this.+It%27s+called+meld.%0D%0A%0D%0ASo...%0D%0A%0D%0A%0D%0Asudo+apt-get+install+meld%0D%0A%0D%0A%0D%0AAnd+in+RapidSVN+%26rarr%3B+Preferences+%26rarr%3B+Programs+%26rarr%3B+Diff+Tool+simply+enter+meld.+Now+you+should+be+able+to+right+click+a+file+and+select+the+Diff...+flavour+you+prefer+%28to+Base%2C+to+HEAD+or+to+something+else%29%2C+and+get+the+diff+between+the+versions%21%0D%0A%0D%0AYou+might+remember+I+always+say+I+tend+to+use+the+command+line+for+dealing+with+SVN%2C+but+sometimes+I+feel+lazy+%28specially+when+dealing+with+many+files+at+the+same+time%29%2C+and+RapidSVN+is+very+handy+to+get+a+quick+overview+of+what%27s+changed.+Besides%2C+it+doesn%27t+break+randomly+like+Subclipse%2FSubversive+whenever+Eclipse+is+updated%2C+and+can+be+used+outside+Eclipse%2C+for+non-Eclipse+projects.+Thanks+to+mrdoob+for+the+cool+app+recommendation+%3A%29&amp;amp;tags=eclipse%2Cmeld%2Crapidsvn%2Csubversion%2Csvn%2Cubuntu%2Cblog" type="text/html" />
	</item>
		<item>
		<title>My Git workflow</title>
		<link>http://soledadpenades.com/2009/12/18/my-git-workflow/</link>
		<comments>http://soledadpenades.com/2009/12/18/my-git-workflow/#comments</comments>
		<pubDate>Fri, 18 Dec 2009 12:41:29 +0000</pubDate>
		<dc:creator>sole</dc:creator>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[git]]></category>
		<category><![CDATA[subversion]]></category>
		<category><![CDATA[workflow]]></category>

		<guid isPermaLink="false">http://soledadpenades.com/?p=2333</guid>
		<description><![CDATA[I first attempted to use Git almost a year ago. I tried to use it as a kind of rsync&#8217;er between computers for my personal projects+data folder. It didn&#8217;t work too well: I think it was primarily built with the idea of versioning and syncing source files, not thousands of WAV sample files scattered around [...]]]></description>
			<content:encoded><![CDATA[<p>I first attempted to use Git almost a year ago. I tried to use it as a kind of rsync&#8217;er between computers for my personal projects+data folder. It didn&#8217;t work too well: I think it was primarily built with the idea of versioning and syncing source files, not thousands of WAV sample files scattered around thousands of nested folders. So I left &#8220;Start using Git&#8221; in my to-do list and almost forgot about it.</p>
<p>Recently I was about to start a project where I didn&#8217;t know quite well what direction it was going to take. So I was there, experimenting and hacking code here and there while investigating where would it bring us, when I realised that I would like to have a snapshot of the code at that point, before continuing with the next part. The classic solution would have been to make a .zip of the code folder, or a copy of the folder in the above directory, and continue. But if you want to compare between versions, manually calling diff between file versions is cumbersome. I didn&#8217;t want to add the code to the subversion repository because it was by no means ready yet for anything. So I though: why don&#8217;t I use git for this?</p>
<p>First steps were a bit uncertain, but I quickly developed a simple yet effective command line technique. Yeah, no IDE plug-in whatsoever, I am just using a bash terminal. It works pretty much like this:</p>
<ul>
<li>code code code</li>
<li>looks good! let&#8217;s store this&#8230;</li>
<li><strong>git add file1.cpp file2.cpp</strong> &#8230;&#8230;&#8230;. or <strong>git add .</strong> for adding all changed files to the commit</li>
<li><strong>git commit</strong> (so that I can enter more than one line of commit message, in the editor that shows up) or <strong>git commit -m &#8216;commit message&#8217;</strong> for one liners.</li>
</ul>
<p>Sometimes, when I want to see what has changed, I use <strong>gitk</strong>. It is admittedly ugly but once you get it, it&#8217;s nicer than reading plain <strong>diff</strong> output in a terminal screen. Specially because you can navigate between changes, instead of having to manually invoke diff for each file you want to compare.</p>
<p>At a certain point I wanted to make a huge code change, so I made a new branch. Actually, I haven&#8217;t gone back to the other branch since then, but it&#8217;s good to know it&#8217;s there in case I want to see how the code is in that totally incompatible code and class-wise approach to the problem.</p>
<p>Probably one of the things I like more is that everything is lightning fast. Since the repository is stored locally, there is no more waiting for commits to finish or contacting the server for getting a diff. Even if your Subversion server is in your local network, it will never beat the experience of a localhost, direct disk access based repository. This way, one doesn&#8217;t get distracted with the check in/commit process; it becomes an almost automatic action so the mind can be focused in the real problem: the code!</p>
<p>If you&#8217;re an advanced git user, you might have already realised that I am only using a very reduced set of git features. Whether that&#8217;s <em>sad</em> or not, I leave it up to you; I just wanted to highlight the notion that although git is generally used (or was designed) for huge projects with lots of collaborators branching and merging intensively and all that, <strong>it is actually very good for producing what I call code sketches</strong>, and it doesn&#8217;t need to be used by several users with all the <em>clone</em>, <em>pull</em>, <em>push</em> and rest of single-worded verbs paraphernalia to enjoy its power.</p>
<p>Please don&#8217;t understand this post as a <q>subversion sucks, use git</q> square-headed litany, but rather as a friendly <q>git could be quite useful, if you have some spare time you might consider having a look at it</q> suggestion from a long-time Subversion user who knows Git is intimidating but worth the effort to learn :D</p>
 <p><a href="http://soledadpenades.com/?flattrss_redirect&amp;id=2333&amp;md5=77b36f02712d19e33d28cf9b5d7e3ad1" title="Flattr" target="_blank"><img src="http://soledadpenades.com/wp-content/plugins/flattr/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://soledadpenades.com/2009/12/18/my-git-workflow/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
		<atom:link rel="payment" href="https://flattr.com/submit/auto?user_id=8399&amp;amp;url=http%3A%2F%2Fsoledadpenades.com%2F2009%2F12%2F18%2Fmy-git-workflow%2F&amp;amp;language=en_GB&amp;amp;category=text&amp;amp;title=My+Git+workflow&amp;amp;description=I+first+attempted+to+use+Git+almost+a+year+ago.+I+tried+to+use+it+as+a+kind+of+rsync%27er+between+computers+for+my+personal+projects%2Bdata+folder.+It+didn%27t+work+too+well%3A+I+think+it+was+primarily+built+with+the+idea+of+versioning+and+syncing+source+files%2C+not+thousands+of+WAV+sample+files+scattered+around+thousands+of+nested+folders.+So+I+left+%22Start+using+Git%22+in+my+to-do+list+and+almost+forgot+about+it.%0D%0A%0D%0ARecently+I+was+about+to+start+a+project+where+I+didn%27t+know+quite+well+what+direction+it+was+going+to+take.+So+I+was+there%2C+experimenting+and+hacking+code+here+and+there+while+investigating+where+would+it+bring+us%2C+when+I+realised+that+I+would+like+to+have+a+snapshot+of+the+code+at+that+point%2C+before+continuing+with+the+next+part.+The+classic+solution+would+have+been+to+make+a+.zip+of+the+code+folder%2C+or+a+copy+of+the+folder+in+the+above+directory%2C+and+continue.+But+if+you+want+to+compare+between+versions%2C+manually+calling+diff+between+file+versions+is+cumbersome.+I+didn%27t+want+to+add+the+code+to+the+subversion+repository+because+it+was+by+no+means+ready+yet+for+anything.+So+I+though%3A+why+don%27t+I+use+git+for+this%3F%0D%0A%0D%0AFirst+steps+were+a+bit+uncertain%2C+but+I+quickly+developed+a+simple+yet+effective+command+line+technique.+Yeah%2C+no+IDE+plug-in+whatsoever%2C+I+am+just+using+a+bash+terminal.+It+works+pretty+much+like+this%3A%0D%0A%0D%0A%0D%0A%09code+code+code%0D%0A%09looks+good%21+let%27s+store+this...%0D%0A%09git+add+file1.cpp+file2.cpp+..........+or+git+add+.+for+adding+all+changed+files+to+the+commit%0D%0A%09git+commit+%28so+that+I+can+enter+more+than+one+line+of+commit+message%2C+in+the+editor+that+shows+up%29+or+git+commit+-m+%27commit+message%27+for+one+liners.%0D%0A%0D%0A%0D%0ASometimes%2C+when+I+want+to+see+what+has+changed%2C+I+use+gitk.+It+is+admittedly+ugly+but+once+you+get+it%2C+it%27s+nicer+than+reading+plain+diff+output+in+a+terminal+screen.+Specially+because+you+can+navigate+between+changes%2C+instead+of+having+to+manually+invoke+diff+for+each+file+you+want+to+compare.%0D%0A%0D%0AAt+a+certain+point+I+wanted+to+make+a+huge+code+change%2C+so+I+made+a+new+branch.+Actually%2C+I+haven%27t+gone+back+to+the+other+branch+since+then%2C+but+it%27s+good+to+know+it%27s+there+in+case+I+want+to+see+how+the+code+is+in+that+totally+incompatible+code+and+class-wise+approach+to+the+problem.%0D%0A%0D%0AProbably+one+of+the+things+I+like+more+is+that+everything+is+lightning+fast.+Since+the+repository+is+stored+locally%2C+there+is+no+more+waiting+for+commits+to+finish+or+contacting+the+server+for+getting+a+diff.+Even+if+your+Subversion+server+is+in+your+local+network%2C+it+will+never+beat+the+experience+of+a+localhost%2C+direct+disk+access+based+repository.+This+way%2C+one+doesn%27t+get+distracted+with+the+check+in%2Fcommit+process%3B+it+becomes+an+almost+automatic+action+so+the+mind+can+be+focused+in+the+real+problem%3A+the+code%21%0D%0A%0D%0AIf+you%27re+an+advanced+git+user%2C+you+might+have+already+realised+that+I+am+only+using+a+very+reduced+set+of+git+features.+Whether+that%27s+sad+or+not%2C+I+leave+it+up+to+you%3B+I+just+wanted+to+highlight+the+notion+that+although+git+is+generally+used+%28or+was+designed%29+for+huge+projects+with+lots+of+collaborators+branching+and+merging+intensively+and+all+that%2C+it+is+actually+very+good+for+producing+what+I+call+code+sketches%2C+and+it+doesn%27t+need+to+be+used+by+several+users+with+all+the+clone%2C+pull%2C+push+and+rest+of+single-worded+verbs+paraphernalia+to+enjoy+its+power.%0D%0A%0D%0APlease+don%27t+understand+this+post+as+a+subversion+sucks%2C+use+git+square-headed+litany%2C+but+rather+as+a+friendly+git+could+be+quite+useful%2C+if+you+have+some+spare+time+you+might+consider+having+a+look+at+it+suggestion+from+a+long-time+Subversion+user+who+knows+Git+is+intimidating+but+worth+the+effort+to+learn+%3AD&amp;amp;tags=git%2Csubversion%2Cworkflow%2Cblog" type="text/html" />
	</item>
		<item>
		<title>Keeping .DS_Store files at bay</title>
		<link>http://soledadpenades.com/2009/07/02/keeping-ds_store-files-at-bay/</link>
		<comments>http://soledadpenades.com/2009/07/02/keeping-ds_store-files-at-bay/#comments</comments>
		<pubDate>Thu, 02 Jul 2009 10:09:36 +0000</pubDate>
		<dc:creator>sole</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[git]]></category>
		<category><![CDATA[mac os x]]></category>
		<category><![CDATA[subversion]]></category>
		<category><![CDATA[trick]]></category>

		<guid isPermaLink="false">http://soledadpenades.com/?p=1108</guid>
		<description><![CDATA[.DS_Store files are to Mac what Thumbs.db are to Windows: annoying, meaningless and worst of all, ubiquitous. Whenever you browse to a folder which contains certain magic files or you do something like moving an icon to a certain position, they system will create those files in the folder. Then you happily type in git [...]]]></description>
			<content:encoded><![CDATA[<p><strong>.DS_Store</strong> files are to Mac what <strong>Thumbs.db</strong> are to Windows: annoying, meaningless and worst of all, ubiquitous. Whenever you browse to a folder which contains certain magic files or you do something like moving an icon to a certain position, they system will create those files in the folder. Then you happily type in <em>git status</em>, or <em>svn status</em>, when lo and behold! those defiant .DS_Store files are there, waiting to be added to your repository.</p>
<p>So you type this in, frantically:</p>
<div class="syhi_block"><code><span style="color: #c20cb9; font-weight: bold;">find</span> . <span style="color: #660033;">-name</span> <span style="color: #ff0000;">&quot;.DS_Store&quot;</span> <span style="color: #660033;">-delete</span></code></div>
<p>and then before it happens again, you edit your <strong>.gitignore</strong> file (which as the user&#8217;s manual helpfully <a href="http://www.kernel.org/pub/software/scm/git/docs/user-manual.html#ignoring-files">points out</a>, should be <q>in the top level of your working directory</q>) and make sure it contains the following lines:</p>
<div class="syhi_block"><code># Ignore useless stuff<br />
.DS_Store</code></div>
<p>Or if you&#8217;re using subversion, you can set the <a href="http://svnbook.red-bean.com/en/1.5/svn.advanced.props.special.ignore.html">svn:ignore property</a>:</p>
<div class="syhi_block"><code>svn propset svn:ignore .DS_Store .</code></div>
<p>You may want to make sure there isn&#8217;t a previous value for svn:ignore with
<div class="syhi_block"><code>svn propget svn:ignore .</code></div>
<p> and if that&#8217;s the case, probably &#8220;merge&#8221; them so that you don&#8217;t lose those values.</p>
<p>While we are on it we could also add <em>Thumbs.db</em> to the list, but since I haven&#8217;t used a Windows system for developing in a long time, I don&#8217;t need to do that (lucky me!)</p>
 <p><a href="http://soledadpenades.com/?flattrss_redirect&amp;id=1108&amp;md5=0f5dbbd92e441c7f54b8a3841b484434" title="Flattr" target="_blank"><img src="http://soledadpenades.com/wp-content/plugins/flattr/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://soledadpenades.com/2009/07/02/keeping-ds_store-files-at-bay/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		<atom:link rel="payment" href="https://flattr.com/submit/auto?user_id=8399&amp;amp;url=http%3A%2F%2Fsoledadpenades.com%2F2009%2F07%2F02%2Fkeeping-ds_store-files-at-bay%2F&amp;amp;language=en_GB&amp;amp;category=text&amp;amp;title=Keeping+.DS_Store+files+at+bay&amp;amp;description=.DS_Store+files+are+to+Mac+what+Thumbs.db+are+to+Windows%3A+annoying%2C+meaningless+and+worst+of+all%2C+ubiquitous.+Whenever+you+browse+to+a+folder+which+contains+certain+magic+files+or+you+do+something+like+moving+an+icon+to+a+certain+position%2C+they+system+will+create+those+files+in+the+folder.+Then+you+happily+type+in+git+status%2C+or+svn+status%2C+when+lo+and+behold%21+those+defiant+.DS_Store+files+are+there%2C+waiting+to+be+added+to+your+repository.%0D%0A%0D%0ASo+you+type+this+in%2C+frantically%3A%0D%0A%0D%0A%0D%0Afind+.+-name+%22.DS_Store%22+-delete%0D%0A%0D%0A%0D%0Aand+then+before+it+happens+again%2C+you+edit+your+.gitignore+file+%28which+as+the+user%27s+manual+helpfully+points+out%2C+should+be+in+the+top+level+of+your+working+directory%29+and+make+sure+it+contains+the+following+lines%3A%0D%0A%0D%0A%0D%0A%23+Ignore+useless+stuff%0D%0A.DS_Store%0D%0A%0D%0A%0D%0AOr+if+you%27re+using+subversion%2C+you+can+set+the+svn%3Aignore+property%3A%0D%0A%0D%0A%0D%0Asvn+propset+svn%3Aignore+.DS_Store+.%0D%0A%0D%0A%0D%0AYou+may+want+to+make+sure+there+isn%27t+a+previous+value+for+svn%3Aignore+with+svn+propget+svn%3Aignore+.+and+if+that%27s+the+case%2C+probably+%22merge%22+them+so+that+you+don%27t+lose+those+values.%0D%0A%0D%0AWhile+we+are+on+it+we+could+also+add+Thumbs.db+to+the+list%2C+but+since+I+haven%27t+used+a+Windows+system+for+developing+in+a+long+time%2C+I+don%27t+need+to+do+that+%28lucky+me%21%29&amp;amp;tags=git%2Cmac+os+x%2Csubversion%2Ctrick%2Cblog" type="text/html" />
	</item>
		<item>
		<title>DVCS are very cool, but&#8230;</title>
		<link>http://soledadpenades.com/2009/05/29/dvcs-are-very-cool-but/</link>
		<comments>http://soledadpenades.com/2009/05/29/dvcs-are-very-cool-but/#comments</comments>
		<pubDate>Fri, 29 May 2009 21:39:09 +0000</pubDate>
		<dc:creator>sole</dc:creator>
				<category><![CDATA[Thoughts]]></category>
		<category><![CDATA[git]]></category>
		<category><![CDATA[mercurial]]></category>
		<category><![CDATA[subversion]]></category>
		<category><![CDATA[workflow]]></category>

		<guid isPermaLink="false">http://soledadpenades.com/?p=1019</guid>
		<description><![CDATA[I have taken a look at both git and mercurial. I even went as far as creating several git repositories for syncing stuff across three computers and testing how it would work. It went quite well, considering there was a huge amount of data involved (for example, my music repository, which consists in lots of [...]]]></description>
			<content:encoded><![CDATA[<p>I have taken a look at both git and mercurial. I even went as far as creating several git repositories for syncing stuff across three computers and testing how it would work. It went quite well, considering there was a huge amount of data involved (for example, my music repository, which consists in lots of folders with lots of WAV samples and some more folders with my songs, in both the source formats (IT, XM, S3M, RNS and even XRNS) and the renders (MP3 or OGG, depending on how I felt that particular day). </p>
<p>But I&#8217;m still not completely keen on using them, because there are two things that can be done only with subversion: checking out only a folder, out from the complete hierarchy. And externals.</p>
<p>Although technically one could check out only a folder with git (or that&#8217;s what I could deduct from what I read), it is still kind of awkward/buggy and very far from being as intuitive as it is with subversion. When I looked for info in mercurial docs, it directly said it wasn&#8217;t possible.</p>
<p>Now it seems google code is offering project owners the possibility of switching from subversion to mercurial, but I am going to keep using subversion there too. I don&#8217;t think anyone is going to want to branch any of my <del datetime="2010-08-21T21:56:45+00:00"><a href="http://code.google.com/p/supersnippets/">supersnippets</a> but you never know ;)</del> &#8212; I <a href="http://github.com/sole/snippets">moved the project</a> to github! You can now branch it if you want :D</p>
<p>You may argue that I could do with lots of mini git repositories for each folder I might possibly want to check out, but knowing myself as I do, that&#8217;s just calling for a disaster to happen. I would probably forget to clone/update the most important repository before going offline, you know, that kind of things. It works better for me to keep a single repository with a nice hierarchy of miniprojects that I might occasionally extract or use as externals in other projects.</p>
<p>Just give me those two features and I will be completely convinced to switch to a DVCS (i.e. <em>Distributed Version Control System</em>) :-)</p>
 <p><a href="http://soledadpenades.com/?flattrss_redirect&amp;id=1019&amp;md5=bedd35a290aba0c5238ce2c1515e6a87" title="Flattr" target="_blank"><img src="http://soledadpenades.com/wp-content/plugins/flattr/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://soledadpenades.com/2009/05/29/dvcs-are-very-cool-but/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		<atom:link rel="payment" href="https://flattr.com/submit/auto?user_id=8399&amp;amp;url=http%3A%2F%2Fsoledadpenades.com%2F2009%2F05%2F29%2Fdvcs-are-very-cool-but%2F&amp;amp;language=en_GB&amp;amp;category=text&amp;amp;title=DVCS+are+very+cool%2C+but%26%238230%3B&amp;amp;description=I+have+taken+a+look+at+both+git+and+mercurial.+I+even+went+as+far+as+creating+several+git+repositories+for+syncing+stuff+across+three+computers+and+testing+how+it+would+work.+It+went+quite+well%2C+considering+there+was+a+huge+amount+of+data+involved+%28for+example%2C+my+music+repository%2C+which+consists+in+lots+of+folders+with+lots+of+WAV+samples+and+some+more+folders+with+my+songs%2C+in+both+the+source+formats+%28IT%2C+XM%2C+S3M%2C+RNS+and+even+XRNS%29+and+the+renders+%28MP3+or+OGG%2C+depending+on+how+I+felt+that+particular+day%29.+%0D%0A%0D%0ABut+I%27m+still+not+completely+keen+on+using+them%2C+because+there+are+two+things+that+can+be+done+only+with+subversion%3A+checking+out+only+a+folder%2C+out+from+the+complete+hierarchy.+And+externals.%0D%0A%0D%0AAlthough+technically+one+could+check+out+only+a+folder+with+git+%28or+that%27s+what+I+could+deduct+from+what+I+read%29%2C+it+is+still+kind+of+awkward%2Fbuggy+and+very+far+from+being+as+intuitive+as+it+is+with+subversion.+When+I+looked+for+info+in+mercurial+docs%2C+it+directly+said+it+wasn%27t+possible.%0D%0A%0D%0ANow+it+seems+google+code+is+offering+project+owners+the+possibility+of+switching+from+subversion+to+mercurial%2C+but+I+am+going+to+keep+using+subversion+there+too.+I+don%27t+think+anyone+is+going+to+want+to+branch+any+of+my+supersnippets+but+you+never+know+%3B%29+--+I+moved+the+project+to+github%21+You+can+now+branch+it+if+you+want+%3AD%0D%0A%0D%0AYou+may+argue+that+I+could+do+with+lots+of+mini+git+repositories+for+each+folder+I+might+possibly+want+to+check+out%2C+but+knowing+myself+as+I+do%2C+that%27s+just+calling+for+a+disaster+to+happen.+I+would+probably+forget+to+clone%2Fupdate+the+most+important+repository+before+going+offline%2C+you+know%2C+that+kind+of+things.+It+works+better+for+me+to+keep+a+single+repository+with+a+nice+hierarchy+of+miniprojects+that+I+might+occasionally+extract+or+use+as+externals+in+other+projects.%0D%0A%0D%0AJust+give+me+those+two+features+and+I+will+be+completely+convinced+to+switch+to+a+DVCS+%28i.e.+Distributed+Version+Control+System%29+%3A-%29&amp;amp;tags=git%2Cmercurial%2Csubversion%2Cworkflow%2Cblog" type="text/html" />
	</item>
		<item>
		<title>Add SVN support to your Eclipse installation</title>
		<link>http://soledadpenades.com/2008/12/10/add-svn-support-to-your-eclipse-installation/</link>
		<comments>http://soledadpenades.com/2008/12/10/add-svn-support-to-your-eclipse-installation/#comments</comments>
		<pubDate>Wed, 10 Dec 2008 13:10:36 +0000</pubDate>
		<dc:creator>sole</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[eclipse]]></category>
		<category><![CDATA[subversion]]></category>

		<guid isPermaLink="false">http://soledadpenades.com/?p=794</guid>
		<description><![CDATA[UPDATE March 2009: Mr doob informed me this installation method has been superseded in later versions of the IDE, and the connector and all other SVN components are now very easy to install, which kind of invalidates this article. However, the rest of advice regarding the use of SVN in Eclipse is still valid. So [...]]]></description>
			<content:encoded><![CDATA[<p><em><strong>UPDATE</strong> March 2009:</p>
<p>Mr doob informed me this installation method has been superseded in later versions of the IDE, and the connector and all other SVN components are now very easy to install, which kind of invalidates this article. However, the rest of advice regarding the use of SVN in Eclipse is still valid. So take this with a pinch of salt :)<br />
</em></p>
<p>Surprisingly, Eclipse comes by default with CVS support only, which is not very use(ful|d) at this point. You can do all your SVN duties from outside Eclipse, using something like kdesvn, TortoiseSVN, etc, but it is really powerful to be able to do everything from Eclipse. Specially for comparing between versions, checking the changes on one file, etc, it&#8217;s really handy.</p>
<p>Unfortunately, the installation procedure is horrible and confusing. So no wonder everybody just opt for using external tools. I have installed it several times in several computers and using different operating systems, and I always forget how to do that. But this time I decided to write it down so that not only I can remember how to do that, but also <strong>people who are using Eclipse with FDT, Flex, etc&#8230;</strong> can benefit from SVN without having to resort to external tools.</p>
<p>I will use Eclipse Ganymede which uses a slightly different naming for installing new features, but you will probably find your way if using an older version of Eclipse. If not, just post a comment and I&#8217;ll try to help :-)</p>
<h3>A bit of background</h3>
<p><em>(aka <q>Why can&#8217;t I just select a new feature to be installed and have it Just-Working?</q>)</em></p>
<p>It seems that because of bizarre licensing problems they can&#8217;t distribute the whole feature in just one file, but they had to split the SVN support in two parts: <strong>the plug-in itself</strong>, which talks to Eclipse and that is distributed from the Ganymede update site, <strong>and the SVN Connector</strong>, which deals with the SVN server and all that, and is NOT distributed from the eclipse servers, but from Polarion.</p>
<p>So that&#8217;s why the installation process is <em>somehow</em> divided in two parts.</p>
<h3>Installing the plug-in</h3>
<p>Go to <strong>Help &#8212; Software Updates &#8212; Available Software</strong></p>
<p>Enter &#8220;svn&#8221; in the field which says &#8220;type filter text&#8221;.</p>
<p>When it shows the matches, check the feature called &#8220;Subversive SVN Team Provider&#8221;</p>
<p>Click <strong>Install&#8230;</strong>, and then <strong>Finish</strong>.</p>
<p>It might ask you to restart the workbench; you can do that if you feel better that way.</p>
<p><strong>Note:</strong> if you can&#8217;t get any result when entering &#8220;svn&#8221; in the field, you might need to add <a href="http://download.eclipse.org/technology/subversive/0.7/update-site/">http://download.eclipse.org/technology/subversive/0.7/update-site/</a> to the list of software sites so that you can install the plug in.</p>
<h3>Installing a connector</h3>
<p>Wooohoo! You have the Team Provider installed, but it is absolutely useless without a connector. Let&#8217;s install one. Where do you get connectors from? Good question. Somewhere in Eclipse literature you can find a link <a href="http://www.polarion.com/products/svn/subversive.php?src=eclipseproject">to this page</a>, which provides links to update sites which will enable you to download one of these mysterious connectors. </p>
<p>What really matters here is that the update site url is <a href="http://www.polarion.org/projects/subversive/download/eclipse/2.0/ganymede-site/">http://www.polarion.org/projects/subversive/download/eclipse/2.0/ganymede-site/</a></p>
<p>Copy and paste that link and in Eclipse go to <strong>Help &#8212; Software Updates &#8212; Available Software</strong></p>
<p>Click on <strong>Add site&#8230;</strong>, and paste the url you just copied. Accept and it should load the available installable features at that location.</p>
<p>Check the following two:</p>
<ul>
<li>Subversive SVN connectors</li>
<li>SVNKit 1.2.0 Implementation (or the highest available version)</li>
</ul>
<p>and click <strong>Install&#8230;</strong>, and <strong>Finish</strong>.</p>
<p>Now it would be a good idea to say <em>yes</em> when it asks you to restart the workbench.</p>
<h3>Selecting the connector</h3>
<p>Not only do you have to install the connector, you might need to tell Eclipse that you want to use the connector. Just for being safe, once you have restarted the workbench, go to <strong>Preferences &#8212; Team &#8212; SVN &#8212; SVN Connector</strong>.</p>
<p>And make sure that SVNKit 1.2.0 (or the one you selected before) is selected.</p>
<h3>Alternative methods</h3>
<p>The official method and support page from Polarion is <a href="http://www.polarion.com/products/svn/subversive.php?src=eclipseproject">here</a>, just in case they changed YET again the install method in Eclipse. It seems there can&#8217;t be a new Eclipse release without changing the way of installing new features, as if it wasn&#8217;t hard enough to install Subversive&#8230;</p>
<h3>Using SVN in Eclipse</h3>
<p>You might probably be wondering how to use this fantastic thing now. Well, you obviously need a SVN repository to begin with, but if you&#8217;ve followed until here, you know what we are talking about. So let&#8217;s create a project to show how to start using SVN here.</p>
<p>Right click over the <strong>Project Explorer</strong> and select <strong>New&#8230; &#8212; Project&#8230;</strong> from the pop-up menu. You should have a new option for SVN in the project types list. Open the SVN folder, highlight <strong>Projects from SVN</strong> and click <strong>Next</strong>.</p>
<p>Now enter the SVN repository details, which you should already know: the url, user, password, etc. If you don&#8217;t use the classic trunk/branches/tags structure, you can deactivate that from the Advanced tab, if you uncheck the &#8220;Enable structure detection&#8221;. </p>
<p>Once you&#8217;re content with the folder and everything, it will ask you for which resources to check out as a project. And it will show you the repository tree for you to browse and select the specific folder you want to check out. Select it, click <strong>Finish</strong>.</p>
<p>In the next window it asks you what to do, regarding the creation of the project. <em>Check out as a project configured using the New Project Wizard</em> is like creating a normal project from scratch with the typical assistant, only that it is prepopulated with the contents from the SVN repository location you just selected. This is very useful for creating PHP projects, or FDT projects, for example, so that the project acquires the appropriate nature and you get instant gratification from the beginning (i.e. source highlighting, auto-completion, useful contextual options, etc &#8230;).</p>
<p>You could also select <em>Check out as a project with the name specified</em>, which will then create a folder with the name you enter, in your current workspace. Very useful for checking different versions of the same repository (for example into your web_root) into the same parent folder, and modifying them in parallel.</p>
<p>Then click <strong>Next</strong>, change the workspace if you feel like that, and <strong>Finish</strong>.</p>
<p>Eclipse will check out things from the repo and set up the new project. If you look at it in the project explorer, it has the svn location right next to its name, to denote it is a svn project.</p>
<h4>Comparing and reverting</h4>
<p>There is more new stuff. Unfold the project to see all the files and open one of them. Edit it and change something, save it. Now go out, leave the computer alone and have a walk. You could also go to an ice rink, there are lots of temporary rinks open right now in London. If that&#8217;s not your thing, you could also head for the pub, which is an all-time winner option. Unless you head hurts&#8230; Anyway, what was that thing you changed? You don&#8217;t remember at this point, do you? Wouldn&#8217;t it be great to compare it with the repository version? But we said we didn&#8217;t want to use external tools, and we won&#8217;t do that. Right click over the modified file (which has a &#8220;>&#8221; in front of its name, to denote it has been modified and has not been checked in yet) and select <strong>Compare with&#8230; Latest from repository</strong>. A new tab will open showing the differences between versions. You can even modify the version you changed, using the repository one as reference.</p>
<p>But what if you don&#8217;t like those changes? Well, you could just wipe out everything by right clicking over the file and selecting <strong>Replace with &#8230; Latest from repository</strong>. Bam! it&#8217;s gone, you can start from scratch again.</p>
<h4>Checking things in (commiting)</h4>
<p>Let&#8217;s imagine you have been doing some work and now are happy with it and want to check that into the repository. It&#8217;s a matter of right clicking over the changed files and selecting <strong>Team&#8230; &#8212; Commit&#8230;</strong>.</p>
<p>If you have right clicked over a folder, it will show you which files from that folder will be included in the commit. This is your last chance for unselecting files you don&#8217;t want to include.</p>
<p>On the other hand, if you have clicked over a file which is not yet in the repository, it will complain and say it&#8217;s not under version control. In this case you need to manually add them first. Right click over the file you want to put under version control (which has a question mark over its icon to show it&#8217;s not in SVN yet) and select <strong>Team &#8212; Add to version control&#8230;</strong>. It will then be included in the next check-ins.</p>
<h4>Deleting stuff</h4>
<p>This is a very common mistake we do when we do not understand how svn works. <strong>If something is under version control, NEVER EVER DELETE IT FROM THE FILE SYSTEM MANUALLY.</strong> You need to delete it via subversion. Fortunately, that is very easy with this plug-in: just right click over it and select <strong>Delete</strong>. Then you&#8217;ll probably have to check in the parent folder, so that subversion registers the new state of the folder (i.e. this folder has now one file less). Otherwise you risk creating a little (or big, depends on your case) wave of chaos and confusion in subsequent commits and updates.</p>
<h4>Updates</h4>
<p>By the way, updating is as easy as right clicking over something and then selecting <strong>Team &#8212; Update</strong>.</p>
<p>This is only a very little demonstration of what you can do with subversive; the best way of finding out is to experiment with the different options there. Let me know if there is some area I could expand in this mini tutorial or if something wasn&#8217;t clear enough, and I&#8217;ll try to clarify. Happy SVN&#8217;ing!</p>
 <p><a href="http://soledadpenades.com/?flattrss_redirect&amp;id=794&amp;md5=4002268a472247352a0ae53d8234c69f" title="Flattr" target="_blank"><img src="http://soledadpenades.com/wp-content/plugins/flattr/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://soledadpenades.com/2008/12/10/add-svn-support-to-your-eclipse-installation/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		<atom:link rel="payment" href="https://flattr.com/submit/auto?user_id=8399&amp;amp;url=http%3A%2F%2Fsoledadpenades.com%2F2008%2F12%2F10%2Fadd-svn-support-to-your-eclipse-installation%2F&amp;amp;language=en_GB&amp;amp;category=text&amp;amp;title=Add+SVN+support+to+your+Eclipse+installation&amp;amp;description=UPDATE+March+2009%3A%0D%0A%0D%0AMr+doob+informed+me+this+installation+method+has+been+superseded+in+later+versions+of+the+IDE%2C+and+the+connector+and+all+other+SVN+components+are+now+very+easy+to+install%2C+which+kind+of+invalidates+this+article.+However%2C+the+rest+of+advice+regarding+the+use+of+SVN+in+Eclipse+is+still+valid.+So+take+this+with+a+pinch+of+salt+%3A%29%0D%0A%0D%0A%0D%0ASurprisingly%2C+Eclipse+comes+by+default+with+CVS+support+only%2C+which+is+not+very+use%28ful%7Cd%29+at+this+point.+You+can+do+all+your+SVN+duties+from+outside+Eclipse%2C+using+something+like+kdesvn%2C+TortoiseSVN%2C+etc%2C+but+it+is+really+powerful+to+be+able+to+do+everything+from+Eclipse.+Specially+for+comparing+between+versions%2C+checking+the+changes+on+one+file%2C+etc%2C+it%27s+really+handy.%0D%0A%0D%0AUnfortunately%2C+the+installation+procedure+is+horrible+and+confusing.+So+no+wonder+everybody+just+opt+for+using+external+tools.+I+have+installed+it+several+times+in+several+computers+and+using+different+operating+systems%2C+and+I+always+forget+how+to+do+that.+But+this+time+I+decided+to+write+it+down+so+that+not+only+I+can+remember+how+to+do+that%2C+but+also+people+who+are+using+Eclipse+with+FDT%2C+Flex%2C+etc...+can+benefit+from+SVN+without+having+to+resort+to+external+tools.%0D%0A%0D%0AI+will+use+Eclipse+Ganymede+which+uses+a+slightly+different+naming+for+installing+new+features%2C+but+you+will+probably+find+your+way+if+using+an+older+version+of+Eclipse.+If+not%2C+just+post+a+comment+and+I%27ll+try+to+help+%3A-%29%0D%0A%0D%0AA+bit+of+background%0D%0A%28aka+Why+can%27t+I+just+select+a+new+feature+to+be+installed+and+have+it+Just-Working%3F%29%0D%0A%0D%0AIt+seems+that+because+of+bizarre+licensing+problems+they+can%27t+distribute+the+whole+feature+in+just+one+file%2C+but+they+had+to+split+the+SVN+support+in+two+parts%3A+the+plug-in+itself%2C+which+talks+to+Eclipse+and+that+is+distributed+from+the+Ganymede+update+site%2C+and+the+SVN+Connector%2C+which+deals+with+the+SVN+server+and+all+that%2C+and+is+NOT+distributed+from+the+eclipse+servers%2C+but+from+Polarion.%0D%0A%0D%0ASo+that%27s+why+the+installation+process+is+somehow+divided+in+two+parts.%0D%0A%0D%0AInstalling+the+plug-in%0D%0A%0D%0AGo+to+Help+--+Software+Updates+--+Available+Software%0D%0A%0D%0AEnter+%22svn%22+in+the+field+which+says+%22type+filter+text%22.%0D%0A%0D%0AWhen+it+shows+the+matches%2C+check+the+feature+called+%22Subversive+SVN+Team+Provider%22%0D%0A%0D%0AClick+Install...%2C+and+then+Finish.%0D%0A%0D%0AIt+might+ask+you+to+restart+the+workbench%3B+you+can+do+that+if+you+feel+better+that+way.%0D%0A%0D%0ANote%3A+if+you+can%27t+get+any+result+when+entering+%22svn%22+in+the+field%2C+you+might+need+to+add+http%3A%2F%2Fdownload.eclipse.org%2Ftechnology%2Fsubversive%2F0.7%2Fupdate-site%2F+to+the+list+of+software+sites+so+that+you+can+install+the+plug+in.%0D%0A%0D%0AInstalling+a+connector%0D%0A%0D%0AWooohoo%21+You+have+the+Team+Provider+installed%2C+but+it+is+absolutely+useless+without+a+connector.+Let%27s+install+one.+Where+do+you+get+connectors+from%3F+Good+question.+Somewhere+in+Eclipse+literature+you+can+find+a+link+to+this+page%2C+which+provides+links+to+update+sites+which+will+enable+you+to+download+one+of+these+mysterious+connectors.+%0D%0A%0D%0AWhat+really+matters+here+is+that+the+update+site+url+is+http%3A%2F%2Fwww.polarion.org%2Fprojects%2Fsubversive%2Fdownload%2Feclipse%2F2.0%2Fganymede-site%2F%0D%0A%0D%0ACopy+and+paste+that+link+and+in+Eclipse+go+to+Help+--+Software+Updates+--+Available+Software%0D%0A%0D%0AClick+on+Add+site...%2C+and+paste+the+url+you+just+copied.+Accept+and+it+should+load+the+available+installable+features+at+that+location.%0D%0A%0D%0ACheck+the+following+two%3A%0D%0A%0D%0A%09Subversive+SVN+connectors%0D%0A%09SVNKit+1.2.0+Implementation+%28or+the+highest+available+version%29%0D%0A%0D%0A%0D%0Aand+click+Install...%2C+and+Finish.%0D%0A%0D%0ANow+it+would+be+a+good+idea+to+say+yes+when+it+asks+you+to+restart+the+workbench.%0D%0A%0D%0ASelecting+the+connector%0D%0A%0D%0ANot+only+do+you+have+to+install+the+connector%2C+you+might+need+to+tell+Eclipse+that+you+want+to+use+the+connector.+Just+for+being+safe%2C+once+you+have+restarted+the+workbench%2C+go+to+Preferences+--+Team+--+SVN+--+SVN+Connector.%0D%0A%0D%0AAnd+make+sure+that+SVNKit+1.2.0+%28or+the+one+you+selected+before%29+is+selected.%0D%0A%0D%0AAlternative+methods%0D%0A%0D%0AThe+official+method+and+support+page+from+Polarion+is+here%2C+just+in+case+they+changed+YET+again+the+install+method+in+Eclipse.+It+seems+there+can%27t+be+a+new+Eclipse+release+without+changing+the+way+of+installing+new+features%2C+as+if+it+wasn%27t+hard+enough+to+install+Subversive...%0D%0A%0D%0AUsing+SVN+in+Eclipse%0D%0A%0D%0AYou+might+probably+be+wondering+how+to+use+this+fantastic+thing+now.+Well%2C+you+obviously+need+a+SVN+repository+to+begin+with%2C+but+if+you%27ve+followed+until+here%2C+you+know+what+we+are+talking+about.+So+let%27s+create+a+project+to+show+how+to+start+using+SVN+here.%0D%0A%0D%0ARight+click+over+the+Project+Explorer+and+select+New...+--+Project...+from+the+pop-up+menu.+You+should+have+a+new+option+for+SVN+in+the+project+types+list.+Open+the+SVN+folder%2C+highlight+Projects+from+SVN+and+click+Next.%0D%0A%0D%0ANow+enter+the+SVN+repository+details%2C+which+you+should+already+know%3A+the+url%2C+user%2C+password%2C+etc.+If+you+don%27t+use+the+classic+trunk%2Fbranches%2Ftags+structure%2C+you+can+deactivate+that+from+the+Advanced+tab%2C+if+you+uncheck+the+%22Enable+structure+detection%22.+%0D%0A%0D%0AOnce+you%27re+content+with+the+folder+and+everything%2C+it+will+ask+you+for+which+resources+to+check+out+as+a+project.+And+it+will+show+you+the+repository+tree+for+you+to+browse+and+select+the+specific+folder+you+want+to+check+out.+Select+it%2C+click+Finish.%0D%0A%0D%0AIn+the+next+window+it+asks+you+what+to+do%2C+regarding+the+creation+of+the+project.+Check+out+as+a+project+configured+using+the+New+Project+Wizard+is+like+creating+a+normal+project+from+scratch+with+the+typical+assistant%2C+only+that+it+is+prepopulated+with+the+contents+from+the+SVN+repository+location+you+just+selected.+This+is+very+useful+for+creating+PHP+projects%2C+or+FDT+projects%2C+for+example%2C+so+that+the+project+acquires+the+appropriate+nature+and+you+get+instant+gratification+from+the+beginning+%28i.e.+source+highlighting%2C+auto-completion%2C+useful+contextual+options%2C+etc+...%29.%0D%0A%0D%0AYou+could+also+select+Check+out+as+a+project+with+the+name+specified%2C+which+will+then+create+a+folder+with+the+name+you+enter%2C+in+your+current+workspace.+Very+useful+for+checking+different+versions+of+the+same+repository+%28for+example+into+your+web_root%29+into+the+same+parent+folder%2C+and+modifying+them+in+parallel.%0D%0A%0D%0AThen+click+Next%2C+change+the+workspace+if+you+feel+like+that%2C+and+Finish.%0D%0A%0D%0AEclipse+will+check+out+things+from+the+repo+and+set+up+the+new+project.+If+you+look+at+it+in+the+project+explorer%2C+it+has+the+svn+location+right+next+to+its+name%2C+to+denote+it+is+a+svn+project.%0D%0A%0D%0AComparing+and+reverting%0D%0A%0D%0AThere+is+more+new+stuff.+Unfold+the+project+to+see+all+the+files+and+open+one+of+them.+Edit+it+and+change+something%2C+save+it.+Now+go+out%2C+leave+the+computer+alone+and+have+a+walk.+You+could+also+go+to+an+ice+rink%2C+there+are+lots+of+temporary+rinks+open+right+now+in+London.+If+that%27s+not+your+thing%2C+you+could+also+head+for+the+pub%2C+which+is+an+all-time+winner+option.+Unless+you+head+hurts...+Anyway%2C+what+was+that+thing+you+changed%3F+You+don%27t+remember+at+this+point%2C+do+you%3F+Wouldn%27t+it+be+great+to+compare+it+with+the+repository+version%3F+But+we+said+we+didn%27t+want+to+use+external+tools%2C+and+we+won%27t+do+that.+Right+click+over+the+modified+file+%28which+has+a+%22%3E%22+in+front+of+its+name%2C+to+denote+it+has+been+modified+and+has+not+been+checked+in+yet%29+and+select+Compare+with...+Latest+from+repository.+A+new+tab+will+open+showing+the+differences+between+versions.+You+can+even+modify+the+version+you+changed%2C+using+the+repository+one+as+reference.%0D%0A%0D%0ABut+what+if+you+don%27t+like+those+changes%3F+Well%2C+you+could+just+wipe+out+everything+by+right+clicking+over+the+file+and+selecting+Replace+with+...+Latest+from+repository.+Bam%21+it%27s+gone%2C+you+can+start+from+scratch+again.%0D%0A%0D%0AChecking+things+in+%28commiting%29%0D%0A%0D%0ALet%27s+imagine+you+have+been+doing+some+work+and+now+are+happy+with+it+and+want+to+check+that+into+the+repository.+It%27s+a+matter+of+right+clicking+over+the+changed+files+and+selecting+Team...+--+Commit....%0D%0A%0D%0AIf+you+have+right+clicked+over+a+folder%2C+it+will+show+you+which+files+from+that+folder+will+be+included+in+the+commit.+This+is+your+last+chance+for+unselecting+files+you+don%27t+want+to+include.%0D%0A%0D%0AOn+the+other+hand%2C+if+you+have+clicked+over+a+file+which+is+not+yet+in+the+repository%2C+it+will+complain+and+say+it%27s+not+under+version+control.+In+this+case+you+need+to+manually+add+them+first.+Right+click+over+the+file+you+want+to+put+under+version+control+%28which+has+a+question+mark+over+its+icon+to+show+it%27s+not+in+SVN+yet%29+and+select+Team+--+Add+to+version+control....+It+will+then+be+included+in+the+next+check-ins.%0D%0A%0D%0ADeleting+stuff%0D%0A%0D%0AThis+is+a+very+common+mistake+we+do+when+we+do+not+understand+how+svn+works.+If+something+is+under+version+control%2C+NEVER+EVER+DELETE+IT+FROM+THE+FILE+SYSTEM+MANUALLY.+You+need+to+delete+it+via+subversion.+Fortunately%2C+that+is+very+easy+with+this+plug-in%3A+just+right+click+over+it+and+select+Delete.+Then+you%27ll+probably+have+to+check+in+the+parent+folder%2C+so+that+subversion+registers+the+new+state+of+the+folder+%28i.e.+this+folder+has+now+one+file+less%29.+Otherwise+you+risk+creating+a+little+%28or+big%2C+depends+on+your+case%29+wave+of+chaos+and+confusion+in+subsequent+commits+and+updates.%0D%0A%0D%0AUpdates%0D%0A%0D%0ABy+the+way%2C+updating+is+as+easy+as+right+clicking+over+something+and+then+selecting+Team+--+Update.%0D%0A%0D%0AThis+is+only+a+very+little+demonstration+of+what+you+can+do+with+subversive%3B+the+best+way+of+finding+out+is+to+experiment+with+the+different+options+there.+Let+me+know+if+there+is+some+area+I+could+expand+in+this+mini+tutorial+or+if+something+wasn%27t+clear+enough%2C+and+I%27ll+try+to+clarify.+Happy+SVN%27ing%21&amp;amp;tags=eclipse%2Csubversion%2Cblog" type="text/html" />
	</item>
	</channel>
</rss>

