CVS

CVS - Logiciels - Linux et OS Alternatifs

Marsh Posté le 25-06-2007 à 18:39:01    

Bonjour,
 
Je me pose des questions sur le logiciel CVS et sur le terme serveur CVS.
Je voudrais créer un serveur CVS sur une partition de mon disque dur afin de gérer mes fichiers personnels (fichier de configuration gvim, .bashrc .... et pleins d'autres fichiers de ce genre)
 
J'ai vu en surfant sur le net qu'il est possible de créer un serveur CVS et d'y accéder via un protocole SSH (crypté) ou du pserver (tout transite en clair sur le réseau).
Ma question est donc la suivante, est-il possible d'avoir sur ma machine un serveur CVS (dont le repository se trouve sur Base) et avoir le "client" CVS (dans un autre répertoire Other par exemple) ?
 
Ou faut-il que je passe par une autre machine ?  :)  
 
En vous remerciant d'avance pour votre aide.
@+


---------------
La connaissance n'est utile que si elle est transmissible ...
Reply

Marsh Posté le 25-06-2007 à 18:39:01   

Reply

Marsh Posté le 25-06-2007 à 18:50:53    

Salut,
 
je pense que tu mélanges un peu plusieurs notions :
 

  • tu as des programmes : le client et le serveur CVS
  • et des données : le dépot (repository en anglais) du côté du serveur, et une copie de travail (working copy) du côté du client.


Plusieurs protocoles permettent au serveur de dialoguer avec le client (entre autres pserver ou ssh).
 
Il est tout à fait possible que le client soit sur la même machine que le dépot. Dans ce cas, tu peux bien sûr utiliser tous les protocoles de la même manièren mais tu peux aussi te dispenser du serveur : le client peut directement aller chercher les informations dans le système de fichiers.
 
J'espère que ça t'éclaircit un peu les idées.  


---------------
TriScale innov
Reply

Marsh Posté le 25-06-2007 à 19:08:01    

PS:
 
si tu veux versionner tes fichiers de configuration, tu vas vite te retrouver confronté au problème suivant :  tu vas mettre ton HOME (et éventuellement /etc) sous contrôle de version, pour ne suivre que quelques fichiers. L'effet secondaire pas forcément désirable est que tu auras des répertoires cachés .cvs partout.
 
Pour ce genre d'utilisation, je préfère utiliser svk (qui est basé sur svn, qui lui même n'est pas très différent de cvs). La différence (entre autres), c'est que svk stocke tout ses fichiers de contrôle au même endroit (dans un répertoire ~/.svk) et il ne "pollue" pas les working copies avec des répertoires cachés dans tous les coins. Tu devrais peut-être y jeter un coup d'oeil...


---------------
TriScale innov
Reply

Marsh Posté le 25-06-2007 à 19:12:32    

Okay, je te remercie pour ton complément d'informations.
 
Effectivement, le client et le serveur CVS sont des programmes (de la meme facon que SVN peut aussi etre un client et un serveur SVN, comme clearcase ...)
Et les données sont effectivement mis dans la base de données (repository)
 
Donc si je comprends bien ton email, il me suffit de créer un serveur CVS en local et d'utiliser un des deux protocoles pour communiquer avec mon serveur (et interroger la base) ou d'aller chercher directement les fichiers sur le système de fichiers.
 
Comment fait-on pour faire créer un serveur et un client sur sa machine ? Si tu peux me donner plus d'infos.
 
Par avance, je te remercie pour tes infos.
@+

Message cité 1 fois
Message édité par Yogis40 le 25-06-2007 à 19:20:18

---------------
La connaissance n'est utile que si elle est transmissible ...
Reply

Marsh Posté le 25-06-2007 à 19:14:00    

Oui, je sais que CVS crée à la base de chaque module, un repertoire .CVS  qui lui permet de faire sa "petite cuisine interne" (nom des fichiers qui ont changés, numéro de version ...)
 
Merci pour ton complément d'info ;)
 
PS: Ce que j'entendais par BASE étant le repository; c'était plutôt le

Code :
  1. CVSROOT="C:/BASE"

, désolé c'était un abus de langage.
@+

Message cité 1 fois
Message édité par Yogis40 le 25-06-2007 à 19:18:19

---------------
La connaissance n'est utile que si elle est transmissible ...
Reply

Marsh Posté le 25-06-2007 à 21:45:39    

Yogis40 a écrit :

Donc si je comprends bien ton email, il me suffit de créer un serveur repository CVS en local et d'utiliser un des deux protocoles pour communiquer avec mon serveur (et interroger la base) ou d'aller chercher directement les fichiers sur le système de fichiers.

Pour créer un dépot, il faut utiliser la commande

cvs init


Cf (par exemple) le manuel CVS en wiki
 

Yogis40 a écrit :

Comment fait-on pour faire créer installer un serveur et un client sur sa machine ? Si tu peux me donner plus d'infos.

Tu utilises les paquets de ta distribution, c'est le plus simple.
 

Yogis40 a écrit :

PS: Ce que j'entendais par BASE étant le repository; c'était plutôt le

Code :
  1. CVSROOT="C:/BASE"

, désolé c'était un abus de langage.

C'est quoi ce chemin à la Windows :??:
 


---------------
TriScale innov
Reply

Marsh Posté le 25-06-2007 à 23:34:24    

Re,
 
Ma distrib c'est cygwin, et le chemin à la windows c'est parce qu'il y a un montage dans cygwin. (C: -> /cygdrive/c/ pour ma partition C )
 
Sans vouloir être offensant, si on pouvait faire avancer le débat au lieu de jouer sur les mots. (créer ou installer ... c'est du pareil au même)  
 
Cdlt
 

Reply

Marsh Posté le 25-06-2007 à 23:55:57    

Yogis40 a écrit :

Ma distrib c'est cygwin, et le chemin à la windows c'est parce qu'il y a un montage dans cygwin. (C: -> /cygdrive/c/ pour ma partition C )
 
Sans vouloir être offensant, si on pouvait faire avancer le débat au lieu de jouer sur les mots. (créer ou installer ... c'est du pareil au même)  
 
Cdlt

Sans vouloir être offensant, pour moi créer un serveur (avec ses petites mimines) et installer un serveur (avec un paquet) c'est pas du tout la même chose. Et si tu continues à employer un mot pour un autre, je vais finir par plus rien comprendre à tes posts et tu seras pas plus avancé :spamafote:
 
...et pour faire avancer le débat, maintenant c'est à toi de jouer ;) :
 
- t'as installé le paquet cvs de cygwin ?
- t'as utilisé la commande cvs init pour créer un dépôt ?
- t'as testé à coups de import/checkout/commit/update en local pour voir si ça marche ?
 
après on pourra s'intéresser à la mise en place d'un serveur cvs. (D'ailleurs, j'ai pas compris si t'avais vraiment besoin d'un serveur cvs pour effectuer des accès depuis d'autres machines : a priori, si tu ne fais que du versionnement de fichiers de conf locaux, tu ne dervais pas avoir besoin d'un accès distant à ton repository :??:)


---------------
TriScale innov
Reply

Marsh Posté le 26-06-2007 à 00:16:59    

- t'as installé le paquet cvs de cygwin ?  
Par défaut, le paquet CVS de cygwin était déja installé. (Version 1.11.22 de 2006)
 
- t'as utilisé la commande cvs init pour créer un dépôt ?  
Je l'ai utilisé mais j'ai du positionné mon CVSROOT pour lui dire sous allez se trouver la base de données.
 
- t'as testé à coups de import/checkout/commit/update en local pour voir si ça marche ?  
Je suis entrain de tester ...

Reply

Marsh Posté le 26-06-2007 à 09:45:07    

Yogis40 a écrit :

- t'as utilisé la commande cvs init pour créer un dépôt ?  
Je l'ai utilisé mais j'ai du positionné mon CVSROOT pour lui dire sous allez se trouver la base de données.
C'est normal: tant que tu n'es pas dans une copie de travail, cvs ne peut pas savoir où se situe ton dépôt. Du coup, tu es obligé de positionner ta variable d'environnement CVSROOT ou bien d'utiliser le switch -d en ligne de commande
 
- t'as testé à coups de import/checkout/commit/update en local pour voir si ça marche ?  
Je suis entrain de tester ...
OK, tiens nous au courant


 
Concernant la nécessité d'un serveur, tu n'as pas répondu à la question : vas-tu avoir besoin d'un accès distant à ton dépôt ?


---------------
TriScale innov
Reply

Marsh Posté le 26-06-2007 à 09:45:07   

Reply

Marsh Posté le 26-06-2007 à 16:19:07    

Mais bon sang, on est plus dans les années 80. Utilise git / monotone / bzr qui n'ont pas besoin de serveur du tout si tu veux travailler seul.

Reply

Marsh Posté le 26-06-2007 à 17:22:22    

CVS non plus n'a pas besoin de serveur si tu as un accès local à tes données :o
Ceci dit, c'est vrai que CVS commence à dater  :sweat:  
 
PS: et merci pour bzr : je connaissais pas  :jap:


---------------
TriScale innov
Reply

Marsh Posté le 27-06-2007 à 18:46:02    

Pour Taz, j'ai pas forcément besoin d'utiliser des trucs trés compliqué ou des choses nouvelles. J'utilise et connais déjà CVS.
 
Aprés je pense que c'est un peu comme le choix d'un éditeur (genre Emacs ou gvim, l'important c'est ce que l'utilisateur a envie de faire avec ) ... Et moi, j'ai pas envie d'explorer et de passer du temps sur git, monotone ou bzr pour l'instant. Je prends des notes et je regarderais ca dès que j'aurais du temps.
 
Merci quand même

Reply

Marsh Posté le 27-06-2007 à 19:25:42    

Yogis40 a écrit :

Pour Taz, j'ai pas forcément besoin d'utiliser des trucs trés compliqué ou des choses nouvelles. J'utilise et connais déjà CVS.
 
Aprés je pense que c'est un peu comme le choix d'un éditeur (genre Emacs ou gvim, l'important c'est ce que l'utilisateur a envie de faire avec ) ... Et moi, j'ai pas envie d'explorer et de passer du temps sur git, monotone ou bzr pour l'instant. Je prends des notes et je regarderais ca dès que j'aurais du temps.
 
Merci quand même


 
Y'a 4-5 commandes à connaître pour démarrer sous un nouveau gestionnaire de versions, ça demande pas un investissement énorme. Tout le monde migre vers des nouveaux gestionnaires de versions et quittent CVS, ça peut être bien de suivre le mouvement.

Reply

Marsh Posté le 27-06-2007 à 20:36:39    

+1, c'est vrai que CVS commence à dater.
 
Et comme dit chaica, utiliser un nouveau gestionnaire de version ne demande pas beaucoup d'adaptation (surtout quand on connait déjà CVS).
 
Tu pourrais tester par exemple SVN (qui est vraiment très proche de CVS, donc quasiment aucune adaptation nécessaire), mais ça commence à dater aussi et c'est un modèle centralisé. Sinon, tu peux te lancer dans le décentralisé (très à la mode en ce moment), avec par exemple SVK (qui est une surcouche à SVN, donc par conséquent encore assez proche de CVS), ou ceux que t'a conseillés Taz.
 
Franchement, ça fait pas de grande différence par rapport à CVS (à la limite, il y a deux ou trois commandes du style 'push' et 'pull' qui se rajoutent) et tu peux y gagner pas mal en flexibilité.


---------------
TriScale innov
Reply

Marsh Posté le 28-06-2007 à 19:24:37    

J'utilises déja SVN via TortoiseSVN (au bureau), je trouve ca effectivement assez simple même si le versionning des fichiers se fait de facon différente par rapport à CVS.
 
Je pense pas qu'il y ait de grande révolution entre les différents gestions de configuration (surement des subtilités) ...
 
A l'occassion, dés que j'aurais du temps, j'y jeterais un coup d'oeil.
Merci quand même.


Message édité par Yogis40 le 28-06-2007 à 19:25:22
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed