Version 29 (modified by acosce, 10 years ago) (diff) |
---|
PREMIERS PAS SUR SVN AVEC INCA
- Clef ssh
- Portage du modèle sur svn
- Faire un commit
- La commande delete
- Connaitre les status de votre version
- Ajouter un répertoire 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
- Changer le statut de la version extraite avec svn
- Connaitre les mises à jour faites sur le modèle
Clef ssh
Voir le ticket n°1 http://forge.ipsl.jussieu.fr/inca/ticket/1
Portage du modèle sur svn
créer les répertoires 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.
La commande delete
svn delete namefile svn commit -m "deleted file" namefile
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 répertoire 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 de INCA dans le projet inca svn rm svn+ssh://yourlogin@forge.ipsl.jussieu.fr/ipsl/forge/projets/inca/svn/tags/v2_1
Ajouter un tag ou une branche
Exemple avec pour créer le tag v2_1 à partir du tronc de INCA : svn cp \ svn+ssh://yourlogin@forge.ipsl.jussieu.fr/ipsl/forge/projets/inca/svn/trunk \ svn+ssh://yourlogin@forge.ipsl.jussieu.fr/ipsl/forge/projets/inca/svn/tags/v2_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 #-
Changer le statut de la version extraite avec svn
Si vous avez extrait le modèle en mode lecture seule, et que vous voulez finalement réaliser un commit dessus, vous pouvez changer le statut de cette version. Voici un exemple avec igcmg
svn switch --relocate http://forge.ipsl.jussieu.fr/igcmg/svn svn+ssh://login@forge.ipsl.jussieu.fr/ipsl/forge/projets/igcmg/svn
Connaitre les mises à jour faites sur le modèle
Si vous souhaitez connaitre les modifications apportées dans la base svn pour le modèle sur lequel vous travaillez :
svn log -rHEAD:BASE