Version 13 (modified by acosce, 16 years ago) (diff) |
---|
Premiers pas sur svn avec INCA
- Créer une clef ssh
- Portage du modÚle sur SVN
- Faire un commit
- Connaitre les status de votre version
- Ajouter un repertoire ou un fichier
- Faire un update sur un fichier ou un répertoire
- Ajouter un Id en entete des fichers
- Effacer un tag ou une branche
- Ajouter un tag ou une branche
- Recuperer inca3 sans passer par modipsl
- Faire un commit sur la config en partant de modipsl
Clef ssh
Voir le ticket n°1 http://forge.ipsl.jussieu.fr/inca/ticket/1
Portage du modele sur svn
creer les repertoires branches tags et trunk
ssh -X inca@forge.ipsl.jussieu.fr (+ passwd) svn mkdir file:///ipsl/forge/projets/inca/svn/trunk file:///ipsl/forge/projets/inca/svn/branches file:///ipsl/forge/projets/inca/svn/tags -m "INCA : trunk branches and tags directories creation"
Importer une nouvelle architecture
Mise en place sous svn de la configuration LMDZINCA parallÚle. Commande à passer pour ajouter une configuration : !!! attention se placer au dessus du répertoire que l'on veut ajouter
svn import LMDZINCA_v2 svn+ssh://yourlogin@forge.ipsl.jussieu.fr/ipsl/forge/projets/igcmg/svn/CONFIG/trunk/LMDZINCA_v2
Faire un commit
svn commit -m "message" namefile
Attention : vérifiez bien que vous travaillez en tant qu'administrateur et non pas comme utilisateur.
Connaitre les status de votre version
svn status [file]
permet de savoir si votre fichier a été modifier par rapport à l'archive svn
svn log [file]
indique toutes les révisions liées à ce fichier
Ajouter un repertoire ou un fichier
svn add newfile svn commit -m "message" newfile
Faire un update sur un fichier ou un répertoire
svn update [file or repertory]
Exemple
$ svn update toto U toto
La commande svn update retourne une lettre (U, A, D, R, G ou C) plus le nom du fichier touché. Nous allons voir la signification de ces différentes lettres.
U : le fichier a bien été mis à jour, il n'y a aucun conflit. A : le fichier a été ajouté à votre répertoire, c'est donc qu'il n'existait pas avant. D : le fichier a été effacé de votre répertoire. R : le fichier a été remplacé dans votre répertoire. G : vous aviez fait des modifications dans le fichier d'origine mais ces modifications n'entre pas en conflit avec la mise à jour. C : il y a des conflits entre la mise à jour et vos propres modifications. Il faut donc ouvrir le fichier pour les régler manuellement.
Ajouter un Id en entete des fichers
Rajouter en haut de chaque ficher la ligne suivante
! $Id$ ou (suivant la syntaxe) # $Id$
Puis passer les lignes de commande suivantes :
svn propset svn:keywords "Id" *.f90 svn commit *.f90
Effacer un tag ou une branche
Exemple avec le tag v2_1_1 de modipsl dans le projet igcmg svn rm svn+ssh://yourlogin@forge.ipsl.jussieu.fr/ipsl/forge/projets/igcmg/svn/modipsl/tags/v2_1_1
Ajouter un tag ou une branche
Exemple avec pour créer le tag v2_1_1 à partir du tronc de modipsl : svn cp \ svn+ssh:/yourlogin@forge.ipsl.jussieu.fr/ipsl/forge/projets/igcmg/svn/modipsl/trunk \ svn+ssh://yourlogin@forge.ipsl.jussieu.fr/ipsl/forge/projets/igcmg/svn/modipsl/tags/v2_1_1
Recuperer inca3 sans passer par modipsl
pour un administrateur : svn co svn+ssh://yourlogin@forge.ipsl.jussieu.fr/ipsl/forge/projets/inca/svn/trunk/INCA3
Faire un commit sur la config en partant de modipsl
Attention il faut avoir récupéré modipsl en administrateur ET la config LMDZINCA_v2 en administrateur également.
Pour cela modifier mod.def en ajoutant la ligne
#-S- 9 svn svn+ssh://yourlogin@forge.ipsl.jussieu.fr/ipsl/forge/projets/igcmg/svn
puis modifier l'appel pour la config voulue
#-C- LMDZINCA_v2 LMDZ4 V3_test 3 . modeles #-C- LMDZINCA_v2 libIGCM ? 1 . . #-C- LMDZINCA_v2 CONFIG/trunk/LMDZINCA_v2 ? 8 LMDZINCA_v2 config #- devient #-C- LMDZINCA_v2 LMDZ4 V3_test 3 . modeles #-C- LMDZINCA_v2 libIGCM ? 1 . . #-C- LMDZINCA_v2 CONFIG/trunk/LMDZINCA_v2 ? 9 LMDZINCA_v2 config #-