Page de démarrage > howto > svn 
 en de es it nl pl pt pt_BR mk sq ca hu cs tr ar fa id vi ko ja ru zh zh_TW eo
Précédent  Suivant  Éditer  Renommer  Annuler  Rafraîchir  Rechercher  Administration  
THIS WIKI IS DEPRECATED AND IS READ-ONLY. THE NEW WIKI IS THERE.
Documentation
Historique
 
Attention! La traduction de cette page n'est pas à jour.  Voir la version anglaise 
Comment utiliser SubVersion

Subversion est le logiciel qui gère le dépôt du code source Gambas sur http://sourceforge.net.

Un dépôt est exactement comme un système de fichiers, mais un système de fichiers qui garde toutes les modifications.

Organisation du dépôt Gambas

Le dépôt Gambas est divisé en trois répertoires principaux :

/trunk Ce répertoire contient les sources de la version en développement. Son but est de devenir la version principale suivante de Gambas (3.0).
/branches Ce répertoire contient les sources de la version stable. Il y a un sous répertoire pour chaque version stable. Leur cible est de devenir la version mineure suivante de la version stable (2.X).

On peut y trouver quelques autres développements relatifs à Gambas qui sont conçus en dehors de /trunk, et qui y seront intégrés dans le futur.

/tags Ce répertoire contient les sources de chaque version publiée de Gambas. Il y a un sous-répertoire pour chaque version. Ce ne sont que des archives, elles peuvent être utilisées pour recréer un paquet d’une ancienne version.

Vous pouvez lire le contenu du dépôt sur le web à cette adresse : http://sourceforge.net/p/gambas/code

Compiler la version du dépôt Subversion

Vous devez, tout d’abord, télécharger le code source.

Tout le monde peut faire une copie du dépôt sur son disque dur en utilisant la commande suivante :

$ svn checkout http://svn.code.sf.net/p/gambas/code/gambas/trunk

Ou :

$ svn checkout http://svn.code.sf.net/p/gambas/code/gambas/branches/3.3

Pour la version stable.

Une fois que c’est fait, vous effectuez la compilation exactement de la même manière que lorsque vous compilez une archive source téléchargée sur un site web :

$ ./reconf-all
...
$ ./configure -C
...
$ make
...
$ sudo make install
...

Obtenir un accès en écriture au dépôt Gambas

Si vous voulez faire du véritable développement ou de la traduction pour Gambas, alors vous devez avoir un accès en écriture à ce dépôt.

Pour obtenir un accès en écriture au dépôt Subversion de Gambas, créez juste un compte utilisateur sur sourceforge.net, et demandez-moi d'accorder un accès en écriture à l'utilisateur que vous venez de créer.

Comment ça fonctionne?

Chaque fois que quelque choses change dans le dépôt, le numéro de révision est incrémenté, et un journal de révision est attaché à ce dernier. Le journal de révision est édité par la personne ayant fait la modification.

Tout est fait avec la commande svn.

Quelqu'un peut avoir modifié certaines choses entre le moment où vous avez vérifié et le moment où vous avez soumis (c.a.d. envoyé les modifications). Donc avant de faire un svn commit, vous devriez faire un svn update.

Ecrire un journal de révision

Quand vous soumettez, vous devez indiquer l'éditeur utilisé pour l'édition du journal de révision dans la variable d'environnement $EDITOR. Par exemple :

$ EDITOR=gedit svn commit

Notez que vous ne pouvez pas modifier un journal de révision après avoir envoyé vos modifications. Soyez vigilant !

Format du journal de révision

Je voulais avoir une manière standard d'écrire les messages de soumission, de telle sorte que le ChangeLog puisse être presque automatiquement généré.

Le format est le suivant:

'BUG' est pour un problème résolu, 'NEW' pour une nouvelle caractéristique, et 'OPT' pour une optimisation.

Les emplacements sont le nom du composant en majuscule, ou l’un des suivants :

Toutes les lignes doivent être inférieures ou égales à 76 caractères.

Si une modification de ChangeLog prend plus d’une ligne, vous devez utiliser une indentation de 2 espaces.

Les lignes vides sont ignorées.

Toutes les autres lignes n'iront pas dans le ChangeLog.

Exemple

J'ai fait cette chose, et elle n'ira pas dans le ChangeLog.

[GB.QT]
* BUG: J’ai réparé ce bug.
* NEW: J’ai fais cette très longue modification....
  Et ça prend plus d’une ligne pour l’écrire.

Cela n’ira pas dans le changelog non plus.

[GB.SDL]
* BUG: Quel horrible bug!

[GB.GTK]
* NEW: J’ai finalement terminé le composant :-)

Veuillez s'il vous plaît suivre ce schéma. ça serait vraiment cool...

Liste de diffusion de soumission

Il y a une liste de diffusion qui récupère un mail chaque fois que quelqu'un (en général moi) envoie une nouvelle révision. De cette manière vous savez toujours si vous avez la dernière révision sur votre disque dur ou pas.

Pour vous inscrire à cette liste de diffusion, allez à la page de la liste de diffusion sur le site web. Le nom de la liste de diffusion est gambas-devel-svn.

État de votre copie de dépôt

Pour obtenir l'état de votre copie de dépôt, lancer la commande svn status.

Chaque état est décrit par une ou plusieurs lettres :

Voir ci dessus pour plus d'informations a propos des conflits.

Avertissements

Aucun suivi automatique de structure de projet

Vous devez dire à subversion si vous ajoutez, supprimez, renommez, ou déplacez un fichier. Vous le faites avec les commandes :

Oublier d'utiliser svn add est une erreur commune. Je sais de quoi je parle :-)

Les conflits

Quelqu'un a pu modifier un fichier dans le dépôt, pendant que vous modifiez le même fichier sur votre disque dur. Ceci est un conflit, et svn vous le dira quand vous lancerez svn update, ou la commande svn status.

Chaque fois qu'il y a un conflit, svn essaye de le résoudre automatiquement, en fusionnant vos propres changements avec les changements faits par les autres personnes.

Si la fusion à réussi, vous obtiendrez un fichier avec un caractère d'état 'G'.

Si la fusion n'a pas réussi, vous aurez un fichier avec un caractère d'état 'C'. Alors vous devrez résoudre le conflit manuellement :

Une fois cela fait, vous direz à svn que le conflit est résolu en lançant la commande svn resolved sur le fichier en conflit.

Y-a-t’il des risques?

Normalement il n'y a pas de risque, comme toutes les choses sont archivées, et donc vous pouvez toujours remonter le temps.

De plus, si vous travaillez sur un projet Gambas à l'intérieur du dépôt, l'environnement de développement peut s'accorder avec toute commande svn pour vous. Allez dans l'onglet Versioning dans la boîte de dialogue des propriétés du projet, et vous trouverez des boutons qui vous permettent de mettre à jour le projet, de l'envoyer, et d'annuler vos modifications.

Si vous avez fait quelque choses de bizarre, vous pouvez utiliser la commande svn revert. Il remettra votre copie locale dans l'état de la dernière vérification ou mise à jour.