You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mina.apache.org by bu...@apache.org on 2016/08/25 10:11:32 UTC
svn commit: r995880 - in /websites/staging/mina/trunk/content: ./
mina-project/developer-guide.html
Author: buildbot
Date: Thu Aug 25 10:11:32 2016
New Revision: 995880
Log:
Staging update by buildbot for mina
Modified:
websites/staging/mina/trunk/content/ (props changed)
websites/staging/mina/trunk/content/mina-project/developer-guide.html
Propchange: websites/staging/mina/trunk/content/
------------------------------------------------------------------------------
--- cms:source-revision (original)
+++ cms:source-revision Thu Aug 25 10:11:32 2016
@@ -1 +1 @@
-1756646
+1757651
Modified: websites/staging/mina/trunk/content/mina-project/developer-guide.html
==============================================================================
--- websites/staging/mina/trunk/content/mina-project/developer-guide.html (original)
+++ websites/staging/mina/trunk/content/mina-project/developer-guide.html Thu Aug 25 10:11:32 2016
@@ -447,189 +447,125 @@ Use your PGP key ID (the pub key, 4096R/
</DIV>
<p>You can get the keys by typing :</p>
-<div class="codehilite"><pre><span class="n">gpg</span> <span class="o">--</span><span class="n">list</span><span class="o">-</span><span class="n">keys</span>
+<div class="codehilite"><pre>gpg --list-keys
</pre></div>
<p>You'll get something like :</p>
-<div class="codehilite"><pre><span class="n">localhost</span><span class="o">:</span><span class="n">target</span> <span class="n">elecharny$</span> <span class="n">gpg</span> <span class="o">--</span><span class="n">list</span><span class="o">-</span><span class="n">keys</span>
-<span class="sr">/Users/elecharny/.gnupg/</span><span class="n">pubring</span><span class="o">.</span><span class="na">gpg</span>
-<span class="o">-----------------------------------</span>
-<span class="n">pub</span> <span class="mi">2048</span><span class="n">D</span><span class="o">/</span><span class="n">xxxxxxxx</span> <span class="mi">2009</span><span class="o">-</span><span class="mi">12</span><span class="o">-</span><span class="mi">03</span>
-<span class="n">uid</span> <span class="n">Emmanuel</span> <span class="n">Lecharny</span> <span class="o"><</span><span class="n">elecharny</span><span class="err">@</span><span class="n">nextury</span><span class="o">.</span><span class="na">com</span><span class="o">></span>
-<span class="n">sub</span> <span class="mi">2048</span><span class="n">g</span><span class="o">/</span><span class="n">yyyyyyyy</span> <span class="mi">2009</span><span class="o">-</span><span class="mi">12</span><span class="o">-</span><span class="mi">03</span>
-
-<span class="n">pub</span> <span class="mi">4096</span><span class="n">R</span><span class="o">/</span><span class="n">zzzzzzzz</span> <span class="mi">2010</span><span class="o">-</span><span class="mi">09</span><span class="o">-</span><span class="mi">13</span>
-<span class="n">uid</span> <span class="n">Emmanuel</span> <span class="n">Lecharny</span> <span class="o">(</span><span class="n">CODE</span> <span class="n">SIGNING</span> <span class="n">KEY</span><span class="o">)</span> <span class="o"><</span><span class="n">elecharny</span><span class="err">@</span><span class="n">apache</span><span class="o">.</span><span class="na">org</span><span class="o">></span>
-<span class="n">sub</span> <span class="mi">4096</span><span class="n">R</span><span class="o">/</span><span class="n">tttttttt</span> <span class="mi">2010</span><span class="o">-</span><span class="mi">09</span><span class="o">-</span><span class="mi">13</span>
-<span class="o">...</span>
+<div class="codehilite"><pre>localhost:target elecharny$ gpg --list-keys
+/Users/elecharny/.gnupg/pubring.gpg
+-----------------------------------
+pub 2048D/xxxxxxxx 2009-12-03
+uid Emmanuel Lecharny <elecharny@nextury.com>
+sub 2048g/yyyyyyyy 2009-12-03
+
+pub 4096R/zzzzzzzz 2010-09-13
+uid Emmanuel Lecharny (CODE SIGNING KEY) <elecharny@apache.org>
+sub 4096R/tttttttt 2010-09-13
+...
</pre></div>
<p>Take the <zzzzzzzz> part of your 4096 bit key.</p>
<p>Use a shell script to sign the packages which are stored in target/checkout/distribution/target. You will first have to delete the created .asc files :</p>
-<div class="codehilite"><pre><span class="n">localhost</span><span class="o">:</span><span class="n">target</span> <span class="n">elecharny$</span> <span class="n">rm</span> <span class="o">*.</span><span class="n">asc</span>
-<span class="n">localhost</span><span class="o">:</span><span class="n">target</span> <span class="n">elecharny$</span> <span class="o">~/</span><span class="n">sign</span><span class="o">.</span><span class="na">sh</span>
-<span class="n">PGP</span> <span class="n">Key</span> <span class="n">ID</span><span class="o">:</span>
-<span class="o"><</span><span class="n">your</span> <span class="n">PGP</span> <span class="n">key</span><span class="o">></span>
-<span class="n">PGP</span> <span class="n">Key</span> <span class="n">Password</span><span class="o">:</span>
-<span class="o"><</span><span class="n">Your</span> <span class="n">PGP</span> <span class="n">passphrase</span><span class="o">></span>
-
-<span class="o">-</span><span class="n">n</span> <span class="n">Signing</span><span class="o">:</span> <span class="o">./</span><span class="n">apache</span><span class="o">-</span><span class="n">mina</span><span class="o">-</span><span class="mf">2.0</span><span class="o">.</span><span class="mi">9</span><span class="o">-</span><span class="n">bin</span><span class="o">.</span><span class="na">tar</span><span class="o">.</span><span class="na">bz2</span> <span class="o">...</span>
- <span class="o">-</span> <span class="n">Generated</span> <span class="s1">'./apache-mina-2.0.9-bin.tar.bz2.md5'</span>
- <span class="o">-</span> <span class="n">Generated</span> <span class="s1">'./apache-mina-2.0.9-bin.tar.bz2.sha1'</span>
- <span class="o">-</span> <span class="n">Generated</span> <span class="s1">'./apache-mina-2.0.9-bin.tar.bz2.asc'</span>
-<span class="o">-</span><span class="n">n</span> <span class="n">Signing</span><span class="o">:</span> <span class="o">./</span><span class="n">apache</span><span class="o">-</span><span class="n">mina</span><span class="o">-</span><span class="mf">2.0</span><span class="o">.</span><span class="mi">9</span><span class="o">-</span><span class="n">bin</span><span class="o">.</span><span class="na">tar</span><span class="o">.</span><span class="na">gz</span> <span class="o">...</span>
- <span class="o">-</span> <span class="n">Generated</span> <span class="s1">'./apache-mina-2.0.9-bin.tar.gz.md5'</span>
- <span class="o">-</span> <span class="n">Generated</span> <span class="s1">'./apache-mina-2.0.9-bin.tar.gz.sha1'</span>
- <span class="o">-</span> <span class="n">Generated</span> <span class="s1">'./apache-mina-2.0.9-bin.tar.gz.asc'</span>
-<span class="o">...</span>
+<div class="codehilite"><pre>localhost:target elecharny$ rm *.asc
+localhost:target elecharny$ ~/sign.sh
+PGP Key ID:
+<your PGP key>
+PGP Key Password:
+<Your PGP passphrase>
+
+-n Signing: ./apache-mina-2.0.9-bin.tar.bz2 ...
+ - Generated './apache-mina-2.0.9-bin.tar.bz2.md5'
+ - Generated './apache-mina-2.0.9-bin.tar.bz2.sha1'
+ - Generated './apache-mina-2.0.9-bin.tar.bz2.asc'
+-n Signing: ./apache-mina-2.0.9-bin.tar.gz ...
+ - Generated './apache-mina-2.0.9-bin.tar.gz.md5'
+ - Generated './apache-mina-2.0.9-bin.tar.gz.sha1'
+ - Generated './apache-mina-2.0.9-bin.tar.gz.asc'
+...
</pre></div>
<p>Here is the sign.sh script you can use :</p>
-<table class="codehilitetable"><tr><td class="linenos"><div class="linenodiv"><pre> 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-32
-33
-34
-35
-36
-37
-38
-39
-40
-41
-42
-43
-44
-45
-46</pre></div></td><td class="code"><div class="codehilite"><pre><span class="c">#!/bin/sh</span>
+<div class="codehilite"><pre>#!/bin/sh
-<span class="nb">echo</span> <span class="s2">"PGP Key ID: "</span>
-<span class="nb">read </span>DEFAULT_KEY
+echo "PGP Key ID: "
+read DEFAULT_KEY
-<span class="nb">echo</span> <span class="s2">"PGP Key Password: "</span>
+echo "PGP Key Password: "
stty -echo
-<span class="nb">read </span>PASSWORD
-stty <span class="nb">echo</span>
-<span class="nb">echo</span> <span class="s2">""</span>
-
-<span class="k">for </span>FILE in <span class="k">$(</span>find . -maxdepth 1 -not <span class="s1">'('</span> -name <span class="s2">"sign.sh"</span> -or -name <span class="s2">".*"</span> -or -name <span class="s2">"*.md5"</span> -or -name <span class="s2">"*.sha1"</span> -or -name <span class="s2">"*.asc"</span> <span class="s1">')'</span> -and -type f<span class="k">)</span> ; <span class="k">do</span>
-<span class="k"> if</span> <span class="o">[</span> -f <span class="s2">"$FILE.asc"</span> <span class="o">]</span>; <span class="k">then</span>
-<span class="k"> </span><span class="nb">echo</span> <span class="s2">"Skipping: $FILE"</span>
- <span class="k">continue</span>
-<span class="k"> fi</span>
-
-<span class="k"> </span><span class="nb">echo</span> -n <span class="s2">"Signing: $FILE ... "</span>
-
- <span class="c"># MD5</span>
- <span class="k">if</span> <span class="o">[</span> ! -f <span class="s2">"$FILE.md5"</span> <span class="o">]</span>;
- <span class="k">then</span>
-<span class="k"> </span>openssl md5 < <span class="s2">"$FILE"</span> | cut <span class="s2">"-d "</span> -f2 > <span class="s2">"$FILE.md5"</span>
- <span class="nb">echo</span> <span class="s2">" - Generated '$FILE.md5'"</span>
- <span class="k">else</span>
-<span class="k"> </span><span class="nb">echo</span> <span class="s2">" - Skipped '$FILE.md5' (file already existing)"</span>
- <span class="k">fi</span>
-
- <span class="c"># SHA1</span>
- <span class="k">if</span> <span class="o">[</span> ! -f <span class="s2">"$FILE.sha1"</span> <span class="o">]</span>;
- <span class="k">then</span>
-<span class="k"> </span>gpg -v --default-key <span class="s2">"$DEFAULT_KEY"</span> --print-md SHA1 <span class="s2">"$FILE"</span> > <span class="s2">"$FILE"</span>.sha1
- <span class="nb">echo</span> <span class="s2">" - Generated '$FILE.sha1'"</span>
- <span class="k">else</span>
-<span class="k"> </span><span class="nb">echo</span> <span class="s2">" - Skipped '$FILE.sha1' (file already existing)"</span>
- <span class="k">fi</span>
-
- <span class="c"># ASC</span>
- <span class="k">if</span> <span class="o">[</span> ! -f <span class="s2">"$FILE.asc"</span> <span class="o">]</span>;
- <span class="k">then</span>
-<span class="k"> </span><span class="nb">echo</span> <span class="s2">"$PASSWORD"</span> | gpg --default-key <span class="s2">"$DEFAULT_KEY"</span> --detach-sign --armor --no-tty --yes --passphrase-fd 0 <span class="s2">"$FILE"</span>
- <span class="nb">echo</span> <span class="s2">" - Generated '$FILE.asc'"</span>
- <span class="k">else</span>
-<span class="k"> </span><span class="nb">echo</span> <span class="s2">" - Skipped '$FILE.asc' (file already existing)"</span>
- <span class="k">fi</span>
-<span class="k">done</span>
+read PASSWORD
+stty echo
+echo ""
+
+for FILE in $(find . -maxdepth 1 -not '(' -name "sign.sh" -or -name ".*" -or -name "*.md5" -or -name "*.sha1" -or -name "*.asc" ')' -and -type f) ; do
+ if [ -f "$FILE.asc" ]; then
+ echo "Skipping: $FILE"
+ continue
+ fi
+
+ echo -n "Signing: $FILE ... "
+
+ # MD5
+ if [ ! -f "$FILE.md5" ];
+ then
+ openssl md5 < "$FILE" | cut "-d " -f2 > "$FILE.md5"
+ echo " - Generated '$FILE.md5'"
+ else
+ echo " - Skipped '$FILE.md5' (file already existing)"
+ fi
+
+ # SHA1
+ if [ ! -f "$FILE.sha1" ];
+ then
+ gpg -v --default-key "$DEFAULT_KEY" --print-md SHA1 "$FILE" > "$FILE".sha1
+ echo " - Generated '$FILE.sha1'"
+ else
+ echo " - Skipped '$FILE.sha1' (file already existing)"
+ fi
+
+ # ASC
+ if [ ! -f "$FILE.asc" ];
+ then
+ echo "$PASSWORD" | gpg --default-key "$DEFAULT_KEY" --detach-sign --armor --no-tty --yes --passphrase-fd 0 "$FILE"
+ echo " - Generated '$FILE.asc'"
+ else
+ echo " - Skipped '$FILE.asc' (file already existing)"
+ fi
+done
</pre></div>
-</td></tr></table>
+
<h3 id="step-8-publish-source-and-binary-distribution-packages">Step 8 : Publish Source and Binary Distribution Packages<a class="headerlink" href="#step-8-publish-source-and-binary-distribution-packages" title="Permanent link">¶</a></h3>
-<p>First of all, create a new directory on people.apache.org/public_html to store the pacckages :</p>
-<div class="codehilite"><pre>$ <span class="n">ssh</span> <span class="n">people</span><span class="p">.</span><span class="n">apache</span><span class="p">.</span><span class="n">org</span>
-$ <span class="n">mkdir</span> <span class="n">public_html</span><span class="o">/</span><span class="n">mina</span><span class="o">-<</span><span class="n">version</span><span class="o">></span>
-$ <span class="n">exit</span>
+<p>The sources, binaries and their signatures, have to be pushed in a place where they can be downloaded by the other committers, in order to be checked while validating the release. As the ~/people.apache.org server is not anymore available for that purpose, we use the distribution space for that purpose.</p>
+<p>If you haven't checked out this space, do it now :</p>
+<div class="codehilite"><pre>$ mkdir -p ~/mina/dist/dev/mina
+$ svn co https://dist.apache.org/repos/dist/dev/mina ~/mina/dist/dev/mina
+</pre></div>
+
+
+<p>That will checkout the full project distributions.</p>
+<p>You may want to checkout only the part that you are going to generate, to avoid getting Gb of data :</p>
+<div class="codehilite"><pre>$ mkdir -p ~/mina/dist/dev/mina/mina
+$ svn co https://dist.apache.org/repos/dist/dev/mina/mina ~/mina/dist/dev/mina/mina
+</pre></div>
+
+
+<p>Now, create a sub-directory for the version you have generated (here, for version 2.0.14) :</p>
+<div class="codehilite"><pre>$ mkdir ~/mina/dist/dev/mina/mina/2.0.14
</pre></div>
<p>Then copy the packages :</p>
-<div class="codehilite"><pre>$ <span class="n">cd</span> <span class="n">target</span><span class="o">/</span><span class="n">checkout</span><span class="o">/</span><span class="n">distributions</span><span class="o">/</span><span class="n">target</span>
-$ <span class="n">scp</span> <span class="n">apache</span><span class="o">-</span><span class="n">mina</span><span class="o">-<</span><span class="n">version</span><span class="o">>-*</span> <span class="n">people</span><span class="p">.</span><span class="n">apache</span><span class="p">.</span><span class="n">org</span><span class="p">:</span><span class="n">public_html</span><span class="o">/</span><span class="n">mina</span><span class="o">-<</span><span class="n">version</span><span class="o">>/</span>
+<div class="codehilite"><pre>$ cd target/checkout/distributions/target
+$ cp apache-mina-2.0.14-* ~/mina/dist/dev/mina/mina/2.0.14/
</pre></div>
-<p>Update your index.html file on people.apach.org/public_html to make the packages visible. Here is an example of possible content :</p>
-<div class="codehilite"><pre><span class="nt"><h2></span>Last MINA 2.0.9 tarballs<span class="nt"></h2></span>
- <span class="nt"><h3></span>Sources<span class="nt"></h3></span>
-
- <span class="nt"><img</span> <span class="na">src=</span><span class="s">"/icons/compressed.gif"</span> <span class="na">alt=</span><span class="s">"[ ]"</span><span class="nt">><a</span> <span class="na">href=</span><span class="s">"mina-2.0.9/apache-mina-2.0.9-src.tar.gz"</span><span class="nt">></span>apache-mina-2.0.9-src.tar.gz<span class="nt"></a><br/></span>
- <span class="nt"><img</span> <span class="na">src=</span><span class="s">"/icons/compressed.gif"</span> <span class="na">alt=</span><span class="s">"[ ]"</span><span class="nt">><a</span> <span class="na">href=</span><span class="s">"mina-2.0.9/apache-mina-2.0.9-src.tar.gz.asc"</span><span class="nt">></span>apache-mina-2.0.9-src.tar.gz.asc<span class="nt"></a><br/></span>
- <span class="nt"><img</span> <span class="na">src=</span><span class="s">"/icons/compressed.gif"</span> <span class="na">alt=</span><span class="s">"[ ]"</span><span class="nt">><a</span> <span class="na">href=</span><span class="s">"mina-2.0.9/apache-mina-2.0.9-src.tar.gz.asc"</span><span class="nt">></span>apache-mina-2.0.9-src.tar.gz.md5<span class="nt"></a><br/></span>
- <span class="nt"><img</span> <span class="na">src=</span><span class="s">"/icons/compressed.gif"</span> <span class="na">alt=</span><span class="s">"[ ]"</span><span class="nt">><a</span> <span class="na">href=</span><span class="s">"mina-2.0.9/apache-mina-2.0.9-src.tar.gz.asc"</span><span class="nt">></span>apache-mina-2.0.9-src.tar.gz.sha1<span class="nt"></a><br/></span>
-
- <span class="nt"><img</span> <span class="na">src=</span><span class="s">"/icons/compressed.gif"</span> <span class="na">alt=</span><span class="s">"[ ]"</span><span class="nt">><a</span> <span class="na">href=</span><span class="s">"mina-2.0.9/apache-mina-2.0.9-src.tar.bz2"</span><span class="nt">></span>apache-mina-2.0.9-src.tar.bz2<span class="nt"></a><br/></span>
- <span class="nt"><img</span> <span class="na">src=</span><span class="s">"/icons/compressed.gif"</span> <span class="na">alt=</span><span class="s">"[ ]"</span><span class="nt">><a</span> <span class="na">href=</span><span class="s">"mina-2.0.9/apache-mina-2.0.9-src.tar.bz2.asc"</span><span class="nt">></span>apache-mina-2.0.9-src.tar.bz2.asc<span class="nt"></a><br/></span>
- <span class="nt"><img</span> <span class="na">src=</span><span class="s">"/icons/compressed.gif"</span> <span class="na">alt=</span><span class="s">"[ ]"</span><span class="nt">><a</span> <span class="na">href=</span><span class="s">"mina-2.0.9/apache-mina-2.0.9-src.tar.bz2.asc"</span><span class="nt">></span>apache-mina-2.0.9-src.tar.bz2.md5<span class="nt"></a><br/></span>
- <span class="nt"><img</span> <span class="na">src=</span><span class="s">"/icons/compressed.gif"</span> <span class="na">alt=</span><span class="s">"[ ]"</span><span class="nt">><a</span> <span class="na">href=</span><span class="s">"mina-2.0.9/apache-mina-2.0.9-src.tar.bz2.asc"</span><span class="nt">></span>apache-mina-2.0.9-src.tar.bz2.sha1<span class="nt"></a><br/></span>
-
- <span class="nt"><img</span> <span class="na">src=</span><span class="s">"/icons/compressed.gif"</span> <span class="na">alt=</span><span class="s">"[ ]"</span><span class="nt">><a</span> <span class="na">href=</span><span class="s">"mina-2.0.9/apache-mina-2.0.9-src.zip"</span><span class="nt">></span>apache-mina-2.0.9-src.zip<span class="nt"></a><br/></span>
- <span class="nt"><img</span> <span class="na">src=</span><span class="s">"/icons/compressed.gif"</span> <span class="na">alt=</span><span class="s">"[ ]"</span><span class="nt">><a</span> <span class="na">href=</span><span class="s">"mina-2.0.9/apache-mina-2.0.9-src.zip.asc"</span><span class="nt">></span>apache-mina-2.0.9-src.zip.asc<span class="nt"></a><br/></span>
- <span class="nt"><img</span> <span class="na">src=</span><span class="s">"/icons/compressed.gif"</span> <span class="na">alt=</span><span class="s">"[ ]"</span><span class="nt">><a</span> <span class="na">href=</span><span class="s">"mina-2.0.9/apache-mina-2.0.9-src.zip.asc"</span><span class="nt">></span>apache-mina-2.0.9-src.zip.md5<span class="nt"></a><br/></span>
- <span class="nt"><img</span> <span class="na">src=</span><span class="s">"/icons/compressed.gif"</span> <span class="na">alt=</span><span class="s">"[ ]"</span><span class="nt">><a</span> <span class="na">href=</span><span class="s">"mina-2.0.9/apache-mina-2.0.9-src.zip.asc"</span><span class="nt">></span>apache-mina-2.0.9-src.zip.sha1<span class="nt"></a><br/></span>
-
- <span class="nt"><h3></span>Binaries<span class="nt"></h3></span>
- <span class="nt"><img</span> <span class="na">src=</span><span class="s">"/icons/compressed.gif"</span> <span class="na">alt=</span><span class="s">"[ ]"</span><span class="nt">><a</span> <span class="na">href=</span><span class="s">"mina-2.0.9/apache-mina-2.0.9-bin.tar.gz"</span><span class="nt">></span>apache-mina-2.0.9-bin.tar.gz<span class="nt"></a><br/></span>
- <span class="nt"><img</span> <span class="na">src=</span><span class="s">"/icons/compressed.gif"</span> <span class="na">alt=</span><span class="s">"[ ]"</span><span class="nt">><a</span> <span class="na">href=</span><span class="s">"mina-2.0.9/apache-mina-2.0.9-bin.tar.gz.asc"</span><span class="nt">></span>apache-mina-2.0.9-bin.tar.gz.asc<span class="nt"></a><br/></span>
- <span class="nt"><img</span> <span class="na">src=</span><span class="s">"/icons/compressed.gif"</span> <span class="na">alt=</span><span class="s">"[ ]"</span><span class="nt">><a</span> <span class="na">href=</span><span class="s">"mina-2.0.9/apache-mina-2.0.9-bin.tar.gz.asc"</span><span class="nt">></span>apache-mina-2.0.9-bin.tar.gz.md5<span class="nt"></a><br/></span>
- <span class="nt"><img</span> <span class="na">src=</span><span class="s">"/icons/compressed.gif"</span> <span class="na">alt=</span><span class="s">"[ ]"</span><span class="nt">><a</span> <span class="na">href=</span><span class="s">"mina-2.0.9/apache-mina-2.0.9-bin.tar.gz.asc"</span><span class="nt">></span>apache-mina-2.0.9-bin.tar.gz.sha1<span class="nt"></a><br/></span>
-
- <span class="nt"><img</span> <span class="na">src=</span><span class="s">"/icons/compressed.gif"</span> <span class="na">alt=</span><span class="s">"[ ]"</span><span class="nt">><a</span> <span class="na">href=</span><span class="s">"mina-2.0.9/apache-mina-2.0.9-bin.tar.bz2"</span><span class="nt">></span>apache-mina-2.0.9-bin.tar.bz2<span class="nt"></a><br/></span>
- <span class="nt"><img</span> <span class="na">src=</span><span class="s">"/icons/compressed.gif"</span> <span class="na">alt=</span><span class="s">"[ ]"</span><span class="nt">><a</span> <span class="na">href=</span><span class="s">"mina-2.0.9/apache-mina-2.0.9-bin.tar.bz2.asc"</span><span class="nt">></span>apache-mina-2.0.9-bin.tar.bz2.asc<span class="nt"></a><br/></span>
- <span class="nt"><img</span> <span class="na">src=</span><span class="s">"/icons/compressed.gif"</span> <span class="na">alt=</span><span class="s">"[ ]"</span><span class="nt">><a</span> <span class="na">href=</span><span class="s">"mina-2.0.9/apache-mina-2.0.9-bin.tar.bz2.asc"</span><span class="nt">></span>apache-mina-2.0.9-bin.tar.bz2.md5<span class="nt"></a><br/></span>
- <span class="nt"><img</span> <span class="na">src=</span><span class="s">"/icons/compressed.gif"</span> <span class="na">alt=</span><span class="s">"[ ]"</span><span class="nt">><a</span> <span class="na">href=</span><span class="s">"mina-2.0.9/apache-mina-2.0.9-bin.tar.bz2.asc"</span><span class="nt">></span>apache-mina-2.0.9-bin.tar.bz2.sha1<span class="nt"></a><br/></span>
-
- <span class="nt"><img</span> <span class="na">src=</span><span class="s">"/icons/compressed.gif"</span> <span class="na">alt=</span><span class="s">"[ ]"</span><span class="nt">><a</span> <span class="na">href=</span><span class="s">"mina-2.0.9/apache-mina-2.0.9-bin.zip"</span><span class="nt">></span>apache-mina-2.0.9-bin.zip<span class="nt"></a><br/></span>
- <span class="nt"><img</span> <span class="na">src=</span><span class="s">"/icons/compressed.gif"</span> <span class="na">alt=</span><span class="s">"[ ]"</span><span class="nt">><a</span> <span class="na">href=</span><span class="s">"mina-2.0.9/apache-mina-2.0.9-bin.zip.asc"</span><span class="nt">></span>apache-mina-2.0.9-bin.zip.asc<span class="nt"></a><br/></span>
- <span class="nt"><img</span> <span class="na">src=</span><span class="s">"/icons/compressed.gif"</span> <span class="na">alt=</span><span class="s">"[ ]"</span><span class="nt">><a</span> <span class="na">href=</span><span class="s">"mina-2.0.9/apache-mina-2.0.9-bin.zip.asc"</span><span class="nt">></span>apache-mina-2.0.9-bin.zip.md5<span class="nt"></a><br/></span>
- <span class="nt"><img</span> <span class="na">src=</span><span class="s">"/icons/compressed.gif"</span> <span class="na">alt=</span><span class="s">"[ ]"</span><span class="nt">><a</span> <span class="na">href=</span><span class="s">"mina-2.0.9/apache-mina-2.0.9-bin.zip.asc"</span><span class="nt">></span>apache-mina-2.0.9-bin.zip.sha1<span class="nt"></a><br/></span>
+<p>Last, not least, commit your changes</p>
+<div class="codehilite"><pre>$ svn add ~/mina/dist/dev/mina/mina/2.0.14
+$ svn ci ~/mina/dist/dev/mina/mina/2.0.14 -m "Apache MINA 2.0.14 packages"
</pre></div>