[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: CVS melange de plusieurs projets



Martin Quinson wrote:
> 
> On Fri, Oct 26, 2001 at 11:18:31AM +0200, William Dodé wrote:
> > Charles Goyard wrote:
> > > Le ven 26 oct 2001 09:44:35 GMT, William Dodé a écrit :
> > > > J'ai 3 projets, A, B et X, A et B on besoin de X donc j'ai une arbo
> > > > comme ça :
> > > >
> > > > /A/x
> > > > /B/x
> > >
> > > Moi je verrais plutôt :
> > >
> > > /A
> > > /B
> > > /X
> > >
> > > > Si je commit A, je vais commiter x en même temps. Hors je voudrais
> > > > pouvoir garder des versions différentes de x suivant s'il est sous A ou
> > > > sous B...
> > >
> > > Tu peux rendre X configurable pour qu'il puisse s'adapter à A ou B
> > > facilement. Si X est bien un projet (une bibliothèque ?), les différences
> > > entre le X(A) et le X(B) ne doivent pas être énormes. Si les différences
> > > sont énormes, alors X n'est pas un projet.
> > >
> > > Ça ressemble à un problème de conception, ton histoire de projet
> > > commun-mais-pas-commun.
> > Ca me parait pourtant classique, mes projets sont des sites en PHP, X
> > c'est des classes génériques.
> > Les sites A et B utilisent donc les mêmes classes génériques, mais pas
> > forcément les mêmes versions.
> 
> Mon avis :
> Dans ta version d'utilisation (checkouté du CVS, utilisée en production dans
> PHP), tu fais :
> /A/x
> /B/x
> 
> Dans le CVS, tu fais :
> /A
> /B
> /X
> 
> Rien ne t'oblige à suivre la meme arborescence dans ton référentiel CVS
> (=repository) et dans la version d'utilisation (checkouté)
> 
> Pour ca, tu cree le CVS comme doit être le référentiel, apres tu fais des mv
> de répertoire et tu va triffouiler un peu dans A/CVS/Entries pour ajouter
> une ligne
> D/vrai_nom_de_x////
> 
> (ca marche car c'est le CVS/Root du répertoire qui détermine ou aller
> chercher les infos. C'est pas déduit de l'arborecence locale)
> 
> Comme ca, quand tu fais un update (ou un commit) dans A, il fait de meme
> dans X.
C'est l'inverse que je cherche ! ne pas aller dans X
> 
> Cette ruse de ne pas mettre les répertoires de la version de travail comme
> dans le réferentiel te permet de couper en trois modules malgrès les
> faiblesses de PHP.
C'est exactement ce que j'ai fait !
Seulement, quand je fait un commit dans A, il me dit que X n'est pas à
jour... Normal puisque la version de X dans A est plus ancienne (et doit
le rester) que la version de X dans B.

Il me faudrait pouvoir faire un commit dans A sans qu'il aille dans X...

a+

ps:
Je gère déjà les Branches, le problème n'est pas là.
Mes projets sont destinés à des serveurs mutualisés, je n'ai donc pas
accès à la config apache...

-- 
William Dodé - Informaticien Indépendant
http://www.flibuste.net



Reply to: