Accéder aux sources de Gepi

Les sources de Gepi sont hébergées sur un SVN (Subversion). Depuis la version 1.4.4, une nouvelle organisation des sources est proposée, qui permet d'accéder à toutes les versions disponibles.

Présentation rapide

Pour récupérer les sources depuis le SVN, vous devez disposer d'un client SVN (par exemple RapidSVN, multiplateforme).
A partir de là, vous pouvez faire un checkout ou un export des sources pour la version que vous souhaitez.

Dernière version de développement (pour tests) :
svn export --username anonymous https://svn.sylogix.org/gepiphp/trunk gepi
Dernière version pour la branche 1.4.4 (stable) :
svn export --username anonymous https://svn.sylogix.org/gepiphp/branches/release-1.4.4 gepi
Version spécifique diffusée sous forme de paquet (ex: 1.4.4.3)
svn export --username anonymous https://svn.sylogix.org/gepiphp/tags/1.4.4.3 gepi

Dans tous les cas, le mot de passe pour l'utilisateur anonymous est 'anonymous'.

Explications détaillées

Les sources de Gepi sont organisées en trois 'branches' principales. Chacune de ces branches a une fonction bien spécifique. Vous pouvez explorer l'arborescence du SVN avec un client SVN, en pointant sur svn://sylogix.org/svnroot/gepi-php

/trunk

Le trunk contient la version de développement sur laquelle sont intégrées les nouvelles fonctionnalités. D'une manière générale, le trunk est toujours à peu près fonctionnel. La seule contrainte est de forcer la mise à jour lorsqu'il n'y a pas eu de changement de version Gepi dans le code.

Pour récupérer les sources du trunk, voir la commande ci-dessus.

/branches

Le répertoire 'branches' contient des branches de développement parallèles au trunk. Leur utilité principale est le gel des fonctionnalités pour la sortie d'une nouvelle version stable et le suivi des corrections de bugs lorsque la nouvelle version a été diffusée.
Par exemple lors du gel des fonctionnalités de la 1.4.4, une nouvelle branche est créée (/branches/release-1.4.4) qui contient le code de la 1.4.4. Aucune nouvelle fonctionnalité n'est ajoutée à cette branche, qui n'est modifiée que dans le cas de corrections de bugs.
Ainsi, lorsque la 1.4.4-stable est diffusée et que les développeurs travaillent déjà sur la version suivante avec de nouvelles fonctionnalités, si un bug est découvert (sur la 1.4.4) il sera corrigé sur la branche release-1.4.4 (et sur le trunk, le cas échéant) et une nouvelle version de maintenance sera diffusée (1.4.4.1, par exemple). Lorsqu'une version stable est diffusée, la branche correspondant à cette version stable reste également stable.
Enfin, une nouvelle branche peut aussi être créée dans le cas d'un développement qui rendrait trop instable (ou inutilisable) le trunk. Dans ce cas, la branche sera préfixée 'dev', et ne sera que temporaire. Une fois le développement stabilisé, il est réintégré au trunk et la branche est supprimée.

/tags

Le répertoire 'tags' contient les images exactes de tous les paquets diffusés (à partir de la 1.4.4 stable). Il s'agit simplement de conserver sur le SVN une image fidèle du code de chaque paquetage. Cela permet entre autre la réalisation simple de patchs pour passer d'une version à l'autre sans écraser le code, très utile lorsque vous avez personnalisé votre Gepi.

Pour la commande à utiliser, voir ci-dessus la partie 'présentation rapide'.