Project

General

Profile

Nouvelle release sur sourceforge » History » Version 18

Version 17 (Elie Soubrie, 28/02/2012 10:30) → Version 18/20 (Elie Soubrie, 14/05/2012 10:57)

h1. Nouvelle release sur sourceforge

h2. Mise à jour du repository IAS (inf-cvs/sitools2)

Un repository subversion contient les différentes versions livrées par le CNES sur sourceforge (http://sitools2.svn.sourceforge.net/viewvc/sitools2/).

Lorsqu'une nouvelle version est mise à disposition, il faut l'importer sur le repository de l'ias :

Pour cela, commencer par récupérer dans un répertoire local la nouvelle version de sitools2 :

<pre>
mkdir sourceforge
svn export --force https://sitools2.svn.sourceforge.net/svnroot/sitools2/tags/1.x sourceforge
ou si la version désirée n'est que dans trunk :
svn export --force https://sitools2.svn.sourceforge.net/svnroot/sitools2/trunk sourceforge
</pre>

Copier sourceforge dans un repertoire de backup (servira pour faire le diff pour identifier les fichiers effacés) :
<pre>
cp -r sourceforge sourceforge_copy
</pre>

Pour créer les répertoires .svn nécessaires au commit, forcer un checkout de la dernière version présente à l'IAS dans ce repertoire local sourceforge :

<pre>
svn co --force https://inf-cvs/sitools2 sourceforge/
</pre>

Pour ajouter récursivement tous les nouveaux fichiers et répertoires :

<pre>
cd sourceforge
svn add * --force
</pre>

Ensuite, commiter cette nouvelle version dans le dépôt sitools2 de l'IAS :
<pre>
svn commit -m "Version 1.x (rev. yyy) of sitools2.svn.sourceforge.net (avant prise en compte des fichiers effaces)" .
</pre>

Enfin, il faut faire un "svn delete" sur les fichiers effacés :
<pre>
svn export https://inf-cvs/sitools2/ local_temporary_version
diff -r local_temporary_version sourceforge_copy > diff_repertoires.txt
</pre>

Les fichiers et répertoires effacés seront identifiés dans diff_repertoires.txt comme étant :
<pre>
Seulement dans local_temporary_version/workspace/sitools-update-classpath/src/fr/cnes/sitools/common: rep1_efface
Seulement dans local_temporary_version/workspace/sitools-update-classpath/src/fr/cnes/sitools: fichier1_efface.java
</pre>
Editer le fichier diff_repertoires.txt, enlever les "Seulement dans local_temporary_version/" et remplacer les ": " des fins de ligne par "/", et faire ensuite :
<pre>
cd sourceforge # ( le repertoire contient la derniere version commitee et geree en conf)
foreach fi in (`cat ../diff_repertoires.txt`) diff_repertoires.txt`)
echo $fi
svn delete $fi
end
</pre>

Terminer en commitant les modifications pour enlever les répertoires et les fichiers effacés :
<pre>
svn commit -m "Version 1.x of sitools2.svn.sourceforge.net (y compris fichiers effaces)" .
</pre>