Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1914 connectés 

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Subversion

n°320789
axey
http://www.00f.net
Posté le 07-09-2003 à 00:20:26  profilanswer
 

Travaillant habituellement avec CVS j'ai toujours été un peu rétiscent pour essayer des alternatives du style Arch ou Subversion : des commandes différentes, des moyens de stockage différents, etc. Bref, ça fait peur.
 
Mais bon, aujourd'hui et pour une raison inconnue, je me suis mis à lire la doc de Subversion, à l'émerger, à suivre quelques tutoriaux et à jouer un peu avec.
 
Bein... C'est mortel.
 
Déjà il est totalement utilisable sans Apache 2, Webdav et compagnie. Ce n'était peut-etre pas les cas des premières versions, mais maintenant ça fonctionne très bien sans (sauf si vous avez vraiment besoin de Webdav, sinon le serveur fourni avec Subversion suffira) .
 
Les projets existants en CVS peuvent etre convertis sans problème au format Subversion; un script pour faire ça est fourni et il fonctionne nickel. Tout l'historique est conservé.
 
Au niveau des commandes... bein... en gros c'est exactement les memes que pour CVS : checkout, checkin, rm, add, commit, diff, import, export... tout ça fonctionne de la meme façon en gros il suffit juste de remplacer "cvs" par "svn".
 
Sauf que... tous les trucs vraiment relous avec ces commandes sous CVS ne posent aucun soucis sous Subversion. Genre pour déplacer/renommer des répertoires, un "svn mv" fonctionne nickel.
 
Les dépots sont spécifiés sous forme d'URL. Et en fait pour chaque commande, vous pouvez travailler sur des dépots spécifiés comme des répertoires locaux ou des URLs de dépots distants. Pour importer des patches entre deux répértoires locaux et recopier le résultat dans un dépot distant, c'est d'une incroyable simplicité comparé à CVS.
 
Dans un répertoire de travail, tout le bordel de Subversion est stocké dans des dossiers ".svn". Ca fait plus propre que les dossiers "cvs" et surtout ils contiennent l'URL du dépot. Dès l'instant où l'on se trouve dans un répertoire versionné, toutes les commandes de Subversion fonctionnent aussitôt et vont consulter le bon dépot. C'est _très_ pratique.
 
Mais le mieux reste la gestion des branches (ou des tags, c'est la meme chose sous Subversion) . Sous Subversion, vous avez juste à "recopier" un répertoire sous un autre nom pour en créer une branche : svn copy <source> <destination> et c'est torché. Au niveau du dépot les mises à jour se font automatiquement dans la bonne branche en fonction du répertoire dans lequel vous vous situez et les numéros de versions restent globaux.
 
Pour fusionner deux branches, un "svn merge" suivi des versions et des répertoires (ou URLs) et hop, c'est réglé.
 
Que dire d'autre... Le logiciel ViewCVS est parfaitement compatible avec Subversion et permet de consulter aisément un dépot via une interface web... il y a aussi pas mal d'interfaces graphiques en Java ou WxWindows pas forcément très utiles à mon avis, mais bon, elles ont le mérite d'exister.
 
Et si vous pensez "pfou c'est cool mais c'est pas le genre de truc que je peux installer au boulot, les mecs qui bossent sous Windows et qui n'ont jamais entendu parler de CVS et compagnie vont etre paumés", rassurez-vous. A partir du site de Subversion vous pouvez télécharger une extension pour l'explorateur de Windows.
 
Une fois cette extension installée, utiliser Subversion devient un jeu d'enfant, tout est intégré dans un menu contextuel lorsque vous naviguez dans un dossier à partir de l'explorateur.
 
La doc de Subversion est un peu fouilli (je vous recommande de rechercher "Subversion tutorial" sur Google en parallèle) mais le soft est vraiment très bien fait et simple d'utilisation une fois que l'on a mémorisé les quelques commandes qu'il comporte.
 
http://subversion.tigris.org/
 

mood
Publicité
Posté le 07-09-2003 à 00:20:26  profilanswer
 

n°320852
Kristoph
Posté le 07-09-2003 à 11:50:08  profilanswer
 

Alors ca marche sous Windows maintenant ? Va vraiment falloir que je suggère ça au boulot car on a des problèmes avec CVS. Notre système est devenu trop gros pour lui.

n°320869
axey
http://www.00f.net
Posté le 07-09-2003 à 12:44:35  profilanswer
 

Oui ça marche sous Windows aussi.

n°431517
the real m​oins moins
Posté le 13-03-2004 à 23:56:09  profilanswer
 

bonsoir.
je viens d'installer svn sur mon serveur(avec apache2), j'ai initialisé un repo, mais dès que j'essaye de le checkouter (sic), je me mange un 403 forbidden:

Citation :


-bash-2.05b$ svn co http://localhost/svn
svn: PROPFIND request failed on '/svn'
svn: PROPFIND of '/svn': 403 Forbidden (http://localhost)


j'ai d'abord cru que c'était lié à mon virtualhost, mais là j'ai mis le <Location> en dehors du virtual host et ça marche pas mieux.
Mon apache tourne en tant que www:www
 
un extrait du httpd.conf:


<Location /svn>
   DAV svn
   SVNParentPath /usr/local/svn
</Location>


/usr/local/svn est un symlink vers /home/svn/repos


-bash-2.05b$ ls -al /usr/local/svn/
total 6
drwxrwsr-x  3 www  svn  512 Mar 13 22:58 .
drwxr-xr-x  3 www  svn  512 Mar 13 22:56 ..
drwxrwsr-x  7 www  svn  512 Mar 13 22:58 monproject
 
-bash-2.05b$ ls -al /home/svn/
total 6
drwxr-xr-x   3 www   svn    512 Mar 13 22:56 .
drwxr-xr-x  17 root  wheel  512 Mar 13 22:56 ..
drwxrwsr-x   3 www   svn    512 Mar 13 22:58 repos


 
une idée? :sweat:


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°431522
Taz
bisounours-codeur
Posté le 14-03-2004 à 00:18:30  profilanswer
 

ça gère les fichiers binaires ?

n°431523
the real m​oins moins
Posté le 14-03-2004 à 00:19:47  profilanswer
 

svn?
gérer dans quel mesure?
(sinon euh bah oui, au moins autant que cvs)


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°431524
the real m​oins moins
Posté le 14-03-2004 à 00:20:19  profilanswer
 

au fait j'ai trouvé mon problème. j'oubliais de mettre /monproject dans mes urls [:mlc]


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°431535
R@NNIS
Tout est possible ou presque.
Posté le 14-03-2004 à 00:47:46  profilanswer
 

Pour les GUI sous windows j' ai pas mal utilisé TortoiseSVN que je conseille d' ailleurs il y' a cependant d'autres logiciels/plugins pour des applications specifiques. Comme disait axey ca s' integre directement à l' interface d' explorer.
 
http://tortoisesvn.tigris.org/
 
Pour linux si vous aimez pas la ligne de commande j' ai vu une gui aussi au nom de rapidsvn mais pas testé personnelement.
 
http://rapidsvn.tigris.org/


Message édité par R@NNIS le 14-03-2004 à 00:48:35

---------------
Mes News
n°431547
Taz
bisounours-codeur
Posté le 14-03-2004 à 01:20:53  profilanswer
 

ben gérer mieux que cvs, c'est à dire avec un diff pour un stockage efficace

n°431549
the real m​oins moins
Posté le 14-03-2004 à 01:22:59  profilanswer
 

Taz a écrit :

ben gérer mieux que cvs, c'est à dire avec un diff pour un stockage efficace

ha oui. ben je sais pas...  


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
mood
Publicité
Posté le 14-03-2004 à 01:22:59  profilanswer
 

n°431558
Taz
bisounours-codeur
Posté le 14-03-2004 à 01:35:00  profilanswer
 

parce que ça c'est un problème.

n°431559
the real m​oins moins
Posté le 14-03-2004 à 01:35:26  profilanswer
 

euh ça t'arrive souvent de mettre de gros binaires dans ton vcs toi?


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°431563
Taz
bisounours-codeur
Posté le 14-03-2004 à 01:40:42  profilanswer
 

oui. genre quand je bosses pendant 1 ans sur une knoppix, j'ai un peu les boules quand je cherches les différences entre 2 versions pour comprendre ce qui a changé/pété

n°431564
the real m​oins moins
Posté le 14-03-2004 à 01:41:28  profilanswer
 

je vois pas le rapport avec les binaires ?


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°431565
Taz
bisounours-codeur
Posté le 14-03-2004 à 01:43:11  profilanswer
 

the real moins moins a écrit :

je vois pas le rapport avec les binaires ?

ben tu vois, ça m'aurait bien aidé pour tout gérer au même endroit. et fichiers de conf /etc en grande partie, plus tous le reste du bordel répartis de partout. j'aurais foutu toutes la distribution dans truc de controle de versions

n°431567
Taz
bisounours-codeur
Posté le 14-03-2004 à 01:44:14  profilanswer
 

et comparé à arch ?

n°431569
the real m​oins moins
Posté le 14-03-2004 à 01:49:13  profilanswer
 

Taz a écrit :

ben tu vois, ça m'aurait bien aidé pour tout gérer au même endroit. et fichiers de conf /etc en grande partie, plus tous le reste du bordel répartis de partout. j'aurais foutu toutes la distribution dans truc de controle de versions

attend mais tu fous les *sources* tu fous pas un tgz des sources hein :heink:


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°431571
Taz
bisounours-codeur
Posté le 14-03-2004 à 01:53:20  profilanswer
 

dis, tu vois la tronche d'une distribution ? les milliers de fichiers que y a dedans ? les centaines de fois ou installes vires des logiciels, modifies un fichier de configuration, ajoute un script, renommes des choses, etc ? ben voilà.
 
2 fois on a du faire un gros retour en arrière et repartir d'une version bien antérieure par ce qu'on était incapable de tracer précisément les différences entre la dernière version cassée et une version qui marche. incapable de dire précisément à quel endroit ça a cassé. alors on reprend une version dont on a conservé une iso, et cai repartit

n°431573
the real m​oins moins
Posté le 14-03-2004 à 01:58:11  profilanswer
 

ben les gens qui *font* ces distribs, j'ose esperer qu'ils utilisent un vcs.
si toi tu es utilisateur de cette distrib, tu peux te contenter de versionner les fichiers que tu y modifies, non?


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°431574
the real m​oins moins
Posté le 14-03-2004 à 01:58:31  profilanswer
 

pis si c pour stocker des iso, ben je vois pas l'interet d'un vcs en fait..


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°431576
Taz
bisounours-codeur
Posté le 14-03-2004 à 02:04:17  profilanswer
 

the real moins moins a écrit :

ben les gens qui *font* ces distribs, j'ose esperer qu'ils utilisent un vcs.
si toi tu es utilisateur de cette distrib, tu peux te contenter de versionner les fichiers que tu y modifies, non?

allo ! je te dis que je bosses sur un dérivée de KNOPPIX ! y a presque un an, avec cyplp, on a pris une knoppix et depuis on l'a mise à jour, intégré des kilomètres de soft, reconfigurer des tonnes de bordels avec X, tout virer pour mettre XFCE4 alors qu'il était pas dans debian, etc . mais bon t'as pas l'air de comprendre

n°431580
the real m​oins moins
Posté le 14-03-2004 à 02:06:47  profilanswer
 

ben non en effet, j'avais pas *deviné* [:petrus75]
 
la seule façon valable de faire soit de tout foutre sur cvs, soit de tenir des patches à jour que tu appliques a la knoppix originale (ce qui apparement risque de pas etre possible pour vous si vous avez "reconfiguré des tonnes de bordels" )


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°431582
Taz
bisounours-codeur
Posté le 14-03-2004 à 02:11:05  profilanswer
 

oui mais le problème, c'est que le va et viens incessent de paquets et de binaires, c'est 1.5Go, alors que le /etc, c'est peut être 10Mo. donc si t'as pas un vcs qui gère le binaire correctement, genre cvs, tu exploses tout. et déjà rien, que se débrouiller avec cvs pour lui faire bouffer du binaire, c'est déjà toute une histoire.
 
comme on a bossé et sur la configuration et sur le contenu, on aurait eu besoin d'un outils mixte

n°431583
the real m​oins moins
Posté le 14-03-2004 à 02:14:10  profilanswer
 

vous avez bien un script quelconque qui builde la distrib complete? pourquoi ne pas faire en sorte que ce script aille chercher les binaires dont vous avez besoin, là ou il faut? (à la façon de maven, en qque sorte, qui va chercher les dependences d'un projet sur un serveur http avant de builder le projet). Il vous suffirait alors de tenir à jour un fichier de config qui reprendrait les differents binaires necessaires.


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°431587
Taz
bisounours-codeur
Posté le 14-03-2004 à 02:17:33  profilanswer
 

non spa aussi simple que ça.  
et le truc c'est également que générer l'iso sur notre machine prenait entre 30 et 45minutes, donc on avait pas trop envie de tester 4 fois par jour. résultat, si tu fais une iso par semaine et que tu la testes, c'est impossible de te souvenir de tous les changements que t'as fait depuis 7 jours. un jour on a l'usb qui est parti en couille tout seule, impossible de comprendre, on était en version 0.6rc et boom on est repartit de 0.5c, dernière version connue correcte, genre qui avait 2mois. le mieux aurait était de stocker des iso journalières, mais ça ne te donne pas de différentiels, et ça prends du temps et trop d'espace  disque


Message édité par Taz le 14-03-2004 à 02:18:36
n°431591
Taz
bisounours-codeur
Posté le 14-03-2004 à 02:26:51  profilanswer
 

http://wiki.gnuarch.org/moin.cgi/S [...] Comparison
 
Distributed and private repositories
 
Repository protected against corruption
 
 
 
ça c'est cool. combien de fois quand on travail sur un patch de son coté sur sa version locale, on est obligé de mailer le patch à tout le monde et de faire tourner le tout. pas de quoi faire une nouvelle branche. juste des modifications conséquentes de plusieurs fichiers (genre réécriture massive ou ajout de fonctionnalité).  
 
je fais le patch, j'envoie à l'autre, il me donne son avis, je modifie 3/4 conneries, renvoie, il est ok, je rajoute des bricoles et hop, on repart pour la même boucle. c'est chiant ça.

n°431625
black_lord
Modérateur
Truth speaks from peacefulness
Posté le 14-03-2004 à 10:06:13  profilanswer
 

Apparemment ça marche bien pour les binaires selon eux
 


# Efficient handling of binary files
 
Subversion is equally efficient on binary as on text files, because it uses a binary diffing algorithm to transmit and store successive revisions.


 
Je vais m'installer ça moi

mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
 

Sujets relatifs
Plus de sujets relatifs à : Subversion


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)