<?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>Olaf&#039;s blog &#187; subversion</title>
	<atom:link href="http://olafsblog.sysbsb.de/category/subversion/feed/" rel="self" type="application/rss+xml" />
	<link>http://olafsblog.sysbsb.de</link>
	<description>Olaf&#039;s blog on software development and life</description>
	<lastBuildDate>Thu, 18 Nov 2010 07:57:20 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Running mvn:release with Subversion 1.5.x</title>
		<link>http://olafsblog.sysbsb.de/running-mvnrelease-with-subversion-15x/</link>
		<comments>http://olafsblog.sysbsb.de/running-mvnrelease-with-subversion-15x/#comments</comments>
		<pubDate>Mon, 23 Mar 2009 16:26:22 +0000</pubDate>
		<dc:creator>olaf</dc:creator>
				<category><![CDATA[J2EE]]></category>
		<category><![CDATA[SCM]]></category>
		<category><![CDATA[System engineering]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[maven 2]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[subversion]]></category>

		<guid isPermaLink="false">http://olafsblog.sysbsb.de/?p=73</guid>
		<description><![CDATA[When attempting to prepare a release using maven and the maven-release-plugin, you are currently very likely to see your build fail with a message such as:

[INFO] Executing: svn --non-interactive copy --file /tmp/...commit . https://subversion..../tags/...
[INFO] Working directory: ...
[INFO] ------------------------------------------------------------------------
[ERROR] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Unable to tag SCM
Provider message:
The svn tag command failed.
Command output:
svn: Commit failed (details follow):
svn: [...]]]></description>
			<content:encoded><![CDATA[<p>When attempting to prepare a release using maven and the <a href="http://maven.apache.org/plugins/maven-release-plugin/">maven-release-plugin</a>, you are currently very likely to see your build fail with a message such as:</p>
<p><code><br />
[INFO] Executing: svn --non-interactive copy --file /tmp/...commit . https://subversion..../tags/...<br />
[INFO] Working directory: ...<br />
[INFO] ------------------------------------------------------------------------<br />
[ERROR] BUILD FAILURE<br />
[INFO] ------------------------------------------------------------------------<br />
[INFO] Unable to tag SCM<br />
Provider message:<br />
The svn tag command failed.<br />
Command output:<br />
svn: Commit failed (details follow):<br />
svn: File '...' already exists<br />
</code></p>
<p>If you do, you are using subversion 1.5.x which no longer supports tagging from a local working copy, thus causing the unfortunately very misleading error message.</p>
<p>This is a <a href="http://jira.codehaus.org/browse/SCM-406"> known issue of the subversion sourcecode management  (SCM)</a> and there is a simple workaround:<br />
<span id="more-73"></span><br />
Use the latest 2.x snapshot version of the maven release plugin and configure it to use remote tagging (on the subversion server) rather than tagging from your local copy.</p>
<p>You can do so by </p>
<h3>1.) Adding the apache snapshots repository to your plugin repositories list</h3>
<pre class="brush: xml;">
    &lt;pluginRepositories&gt;
        &lt;pluginRepository&gt;
            &lt;id&gt;apache-snapshots&lt;/id&gt;
            &lt;name&gt;Apache Snapshot Repository&lt;/name&gt;
            &lt;url&gt;http://repository.apache.org/snapshots/&lt;/url&gt;
            &lt;snapshots&gt;
                &lt;enabled&gt;true&lt;/enabled&gt;
            &lt;/snapshots&gt;
        &lt;/pluginRepository&gt;
        ...
    &lt;/pluginRepositories&gt;
</pre>
<h3>2.) Configuring the release plugin&#8217;s version and tagging</h3>
<pre class="brush: xml;">
        ...
        &lt;build&gt;
        ...
        &lt;pluginManagement&gt;
            &lt;plugins&gt;
                &lt;plugin&gt;
                    &lt;groupId&gt;org.apache.maven.plugins&lt;/groupId&gt;
                    &lt;artifactId&gt;maven-release-plugin&lt;/artifactId&gt;
                    &lt;version&gt;2.0-beta-9-SNAPSHOT&lt;/version&gt;
                    &lt;configuration&gt;
                        &lt;tagBase&gt;full url to the tags directory on the svn server&lt;/tagBase&gt;
                        &lt;!-- See http://jira.codehaus.org/browse/SCM-406 --&gt;
                        &lt;remoteTagging&gt;true&lt;/remoteTagging&gt;
                        &lt;!-- Further non-mandatory but useful settings... --&gt;
                        &lt;preparationGoals&gt;clean install&lt;/preparationGoals&gt;
                        &lt;autoVersionSubmodules&gt;true&lt;/autoVersionSubmodules&gt;
                    &lt;/configuration&gt;
                &lt;/plugin&gt;
            &lt;/plugins&gt;
        &lt;/pluginManagement&gt;
        ...
        &lt;/build&gt;
        ...
</pre>
<p>This fixed it for me.</p>
<p>Note: i had problems getting this to function with the scp:// protocol (provider) for my distribution repository. It seems logic, tough, that the choosen provider must support remote tagging, thus i choose the scpexe:// protocol (using a local scp executable) instead, that worked:</p>
<pre class="brush: xml;">
...
&lt;distributionManagement&gt;
&lt;repository&gt;
  &lt;id&gt;myReo&lt;/id&gt;
  &lt;name&gt;myreo&lt;/name&gt;
  &lt;url&gt;scpexe://...&lt;/url&gt;
 &lt;/repository&gt;
...
&lt;/distributionManagement&gt;
...
</pre>
<p>Apparently, the upcoming 2.0 release of the maven-release-plugin will have remote tagging as default, so if you read this and the 2.0 version has been released, simply using it should do the job.</p>
]]></content:encoded>
			<wfw:commentRss>http://olafsblog.sysbsb.de/running-mvnrelease-with-subversion-15x/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Configuring Eclipse Ganymede with subversion in Ubuntu 8.04</title>
		<link>http://olafsblog.sysbsb.de/configuring-eclipse-ganymede-with-subversion-in-ubuntu-804/</link>
		<comments>http://olafsblog.sysbsb.de/configuring-eclipse-ganymede-with-subversion-in-ubuntu-804/#comments</comments>
		<pubDate>Sun, 13 Jul 2008 10:23:39 +0000</pubDate>
		<dc:creator>olaf</dc:creator>
				<category><![CDATA[J2EE]]></category>
		<category><![CDATA[SCM]]></category>
		<category><![CDATA[System engineering]]></category>
		<category><![CDATA[eclipse]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[subclipse]]></category>
		<category><![CDATA[subversion]]></category>
		<category><![CDATA[subversive]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://olafsblog.sysbsb.de/?p=53</guid>
		<description><![CDATA[After installing the all-new Eclipse ganymede (by downloading it from the eclipse site) under ubuntu 8.04 i ran into some trouble after installing version 1.4.1 of the subclipse subversion plugin.
Long story short, subclipse requires subversion 1.5, but ubuntu 8.04 provides 1.4.x.
If you still want to use subclipse with ganymede in ubuntu, there are only two [...]]]></description>
			<content:encoded><![CDATA[<p>After installing the all-new <a href="http://www.eclipse.org/ganymede/">Eclipse ganymede</a> (by downloading it from the eclipse site) under ubuntu 8.04 i ran into some trouble after installing version 1.4.1 of the <a href="http://subclipse.tigris.org/">subclipse subversion plugin</a>.</p>
<p>Long story short, subclipse requires subversion 1.5, but ubuntu 8.04 provides 1.4.x.<br />
If you still want to use subclipse with ganymede in ubuntu, there are only two ways two achieve this &#8211; both of which i cannot recommend because they are hacks or bad compromises.<br />
<span id="more-53"></span><br />
a.) You could add the the ubuntu package source of the upcoming ubuntu release (i.e. <code>deb http://fr.archive.ubuntu.com/ubuntu intrepid main</code>) and install subversion 1.5 and the package <code>libsvn-java</code> from it. This is a bad idea since it will also install a bunch of transitive dependencies not designed for ubuntu 8.04. It might in fact damage your installation.<br />
b.) You could not use the java hl API but a software connector completely written in JAVA (SVNKit client). This will work at first sight, but will convert your svn repository into 1.5 format. As a consequence, you can no longer use the svn command line client, since it does not support this format.</p>
<h3>Subversive as an alternative to subclipse</h3>
<p>Facing the above problems, i looked for an alternative and tried <a href="http://www.polarion.org/index.php?page=download&#038;project=subversive">subversive</a>. It&#8217;s an official and free eclipse plugin. The developers intend to make it the default subversion support plugin for eclipse.<br />
It installed without any problem and worked really well with the javaHL api shipped with ubuntu 8.04. Look and feel of the plugin do not differ much from subclipse &#8211; subversive even offers a couple of additional useful options.</p>
<p>Here is how i installed and configured subversive:</p>
<ol>
<li>
Follow the installation instructions on the <a href="http://www.polarion.org/index.php?page=download&#038;project=subversive">subversive download site</a>.<br />
Since you will use the native javaHL connector implementation, be sure to choose the javaHL implementation from the update site:<br />
<img id="image56" src="http://olafsblog.sysbsb.de/wp-content/uploads/2008/08/subversive-javahl-selection.jpg" alt="javaHL implementation selection in eclipse update site" />
</li>
<li>Install the java HL API on ubuntu: <code>sudo apt-get install libsvn-javahl</code>.</li>
<li>Add the library directory where javahl resides to your <code>eclipse.ini</code> (located in the root folder of your eclipse installation). Just add the following line into it: <br /><code>-Djava.library.path=/usr/lib/jni</code>.</li>
<li>Restart eclipse</li>
<li>Verify your setup. <br />
   Goto Window>Preferences>Team>SVN and click the &#8220;SVN Connector&#8221; tab.<br />
   The native javaHL connector should be selected<br />
  <img id="image58" src="http://olafsblog.sysbsb.de/wp-content/uploads/2008/08/subversive-javahl-connector-selected.jpg" alt="Eclipse SVN Team view with javaHL connector selected" />
</li>
</ol>
<p>I&#8217;m working with it since about a week, it&#8217;s fast, has not failed on my a single time and is easy to use.</p>
]]></content:encoded>
			<wfw:commentRss>http://olafsblog.sysbsb.de/configuring-eclipse-ganymede-with-subversion-in-ubuntu-804/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Configuring custom username for maven&#8217;s scm with subversion and ssh</title>
		<link>http://olafsblog.sysbsb.de/configuring-custom-username-for-mavens-scm-with-subversion-and-ssh/</link>
		<comments>http://olafsblog.sysbsb.de/configuring-custom-username-for-mavens-scm-with-subversion-and-ssh/#comments</comments>
		<pubDate>Sun, 20 Apr 2008 23:25:57 +0000</pubDate>
		<dc:creator>olaf</dc:creator>
				<category><![CDATA[System engineering]]></category>
		<category><![CDATA[continuum]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[maven 2]]></category>
		<category><![CDATA[subversion]]></category>

		<guid isPermaLink="false">http://olafsblog.sysbsb.de/?p=42</guid>
		<description><![CDATA[I just stumbled over a nice little problem: When using the maven 2 changelog plugin, it automatically uses the configured &#60;scm&#62; settings and attempts to fetch the change history with them.
Unfortunately, such a setting usually does not contain a username, since this has to be provided by the actual team member connecting to version control.
Neither [...]]]></description>
			<content:encoded><![CDATA[<p>I just stumbled over a nice little problem: When using the <a href="http://maven.apache.org/plugins/maven-changelog-plugin/">maven 2 changelog plugin</a>, it automatically uses the configured &lt;scm&gt; settings and attempts to fetch the change history with them.</p>
<p>Unfortunately, such a setting usually does not contain a username, since this has to be provided by the actual team member connecting to version control.<br />
Neither did i have any intention to configure a placeholder into the scm section, forcing the developers to mess with the maven settings.xml in order to provide their own username.</p>
<p>Luckily, after searching a while, i found a proper solution.<br />
SSH allows an optional per-host specific username setting to be placed in a file called &#8220;config&#8221; located in the user&#8217;s .ssh directory, for example</p>
<p>File: ~/.ssh/config</p>
<p><code><br />
Host my.host.name<br />
User myusername<br />
</code></p>
<p>Thanks to <a href="http://programmingishard.com/users/spicycode">Chad Humphries</a>  for posting <a href="http://programmingishard.com/code/434">the Solution on programming is hard</a>.<br />
It really wasn&#8217;t&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://olafsblog.sysbsb.de/configuring-custom-username-for-mavens-scm-with-subversion-and-ssh/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

