Page 1 sur 1

Existe-il une API CVS ?

Posté : 20 mars 2007, 11:57
par bbaudouin
N'ayant pas trouvé mon bonheur sur la documentation officielle fr.php.net, je viens à poster sur PHPFrance.

Je cherche une API, à défault une lib non-officielle, permettant d'accéder à CVS.
Créer une couche graphique en PHP(5) au dessus de CVS.
Avec les fonctionnalités suivantes:
-Commit
-Update
-CheckOut
-Fork
[...]

Any ideas ?

Benjamin

Posté : 20 mars 2007, 12:26
par titerm
Tu as une classes equivalents pour subversion ici

A mon avis, très facile a porter pour cvs

Posté : 20 mars 2007, 14:44
par bbaudouin
Effectivement.

Il existe également phpCVSView , projet en Release 0.3 datant de Nov. 2005, à tester.
Site officiel:
http://phpcvsview.sourceforge.net/index.php

Posté : 20 mars 2007, 16:24
par titerm
Pas du tout la meme chanson...
Dans phpcvsview, le mec gère le protocol en php.... Il a du bien s'amuser...

D'un autre coté, CVS meurs doucement au profit de SVN, donc plus de gros risque d'évolution de protocole... Mais bon, de la a faire confiance a ca pour gérer les sources... Y a une marge... Perso, je la franchirai pas... Mes sources et mon repository, j'y tiens un peu qd meme...

Posté : 20 mars 2007, 16:46
par Invité
Test non concluant.
phpcvsview n'est pas à recommander.
Donc à ne pas utiliser pour les sources d'un repository.

Avant de penser un portage SVN->CVS autant savoir ce que vaut cette classe.
Quelqu'un s'est-il déjà basé sur class.subversion.php ou l'utilise-t-il ?

Posté : 20 mars 2007, 17:02
par naholyr
Quelqu'un s'est-il déjà basé sur class.subversion.php ou l'utilise-t-il ?
Pas besoin de tester pour se rassurer, il suffit de regarder le code source. L'auteur ne s'est pas amusé à porter SVN en PHP, sa classe marche simplement à coup d' exec(), donc peu de risque de corruption du repository tout de même ;)

Posté : 20 mars 2007, 17:11
par bbaudouin
naholyr:
Penses-tu qu'un portage SVN->CVS en modifiant seulement les $cmd via les appels exec() soit suffisant ?
En réalité comment juges-tu le code ?
Une écriture from scratch n'est-elle pas préférable ?

Posté : 20 mars 2007, 17:41
par titerm
Bah comme dit noholyr, la class ne fait qu'encapsuler les binaires std, donc pas de soucis de portabilité ni de maintenance du protocole.

Quand a cette classe, le squelette est la, mais c'est basé sur subversion, donc a part les opérations basique, il y a du ménage a faire. Donc si c'est pour faire du cvs, tu peux t'en inspirer mais repart from scratch en listant les opération que tu souhaites pouvoir gérer dans ta classe.

Question subsidiare ? Quel est l'interret de faire une classe de ce type ?

Posté : 20 mars 2007, 18:22
par bbaudouin
L'intérêt est de manipuler CVS via une couche graphique intuitive sans passer par un terminal.

Posté : 20 mars 2007, 19:45
par naholyr
Il vaut donc mieux passer soit par un module de ton éditeur (eclipse, kdevelop, etc...) soit par une interface graphique dédiée. Il y en a de très performantes pour SVN comme pour CVS.

Réinventer la roue n'est jamais une bonne idée ;)

Posté : 20 mars 2007, 20:09
par titerm
Sous subversion, il existe un module apache qui permet d'accéder au repository via le browser... Il y a peut etre un module equivalent pour cvs...

Posté : 21 mars 2007, 10:24
par bbaudouin
Réinventer la roue n'est jamais une bonne idée
Entièrement d'accord, mais le besoin est ici spécifique.
L'accès à cette couche graphique doit se faire (impérativement) via un navigateur internet.
Donc ni cervisia, ni gcvs, n'est adpaté au besoin.

Posté : 21 mars 2007, 10:39
par naholyr
Alors ces solutions existent déjà :
- Chora - http://www.horde.org/chora/
- CVSWeb - http://people.freebsd.org/~fenner/cvsweb/
- ViewVC - http://www.viewvc.org/index.html

Posté : 21 mars 2007, 10:55
par bbaudouin
:D
C'est ce type de projet qui pouvait m'intéresser.
Quelqu'un les a t il déjà testé ou mis en place: performances, features ?
En somme, lequel choisir ? (même si j'ai déjà ma petite idée)

Posté : 21 mars 2007, 11:43
par naholyr
Il me semble que ViewVC est très utilisé, mais c'est une impression donnée par le sentiment d'avoir souvent vu "powered by viewvc" :lol:
http://viewvc.red-bean.com/
http://tuxtype.svn.sourceforge.net/viewvc/tuxtype/