-
Intro: >
C'est un wrapper pour les syst?mes de versions comme Svn, Cvs, Prcs, Arch... Il permet donc au minimum de faire tout ce que le syst?me sous-jacent propose, mais l'avantage est de pouvoir l'?tendre facilement.
-
HOWTO: Reportez vous au fichier HOWTO pour configurer et installer Vcs.
-
Description:
-
Les commandes de base peuvent ?tre surcharg?es: >
par exemple `svn commit' a un comportement non interactif par d?faut. Mais l'on peut tout de m?me appeler le v?ritable `svn commit'. Pour cela il y a une convention: toutes les m?thodes terminant par `_' sont directement celles du syst?me. Avec cela on peut v?rifier que l'outil est bien devant le vrai svn: svn status_
-
Quelques fonctionnalit?s:
- Un des principaux avantages est la gestion des erreurs: > Par exemple on utilise une commande qui commit puis poste une news. Si le commit r?ussit et que la news ne passe pas, il suffit de relancer l'envoi de la news: svn news En effet chaque m?thode peut conserver des fichiers, ces fichiers commencent par `,'. - Les alias de m?thodes: > Tout comme svn et cvs il existe des raccourcis pour certaines m?thodes et bien s?r lorsque l'on surcharge une m?thode, le raccourci pointe vers la nouvelle m?thode. - Quelques nouvelles m?thodes: - svn revision: Renvoie le num?ro de r?vision courante alias: rev - svn mkchangelog: G?n?re une entr?e de ChangeLog ? partir de `status' alias: mkcl - svn changelog: Concat?ne la nouvelle entr?e au v?ritable ChangeLog alias: cl - svn message: Cr?e le contenu du message du mail ou de la news alias: msg - svn mail: Envoie un mail. - svn news: Poste une news. - Plus facile d'?crire des scripts: > Lorsque l'on veut automatiser un traitement fait avec un Rcs, il est g?n?ralement plus simple de le faire en script shell lorsque cela n'exc?de pas une dixaine de lignes. Apr?s cela certains avantages des langages de script ?volu?s nous manquent. Pourtant certaines choses tr?s faciles peuvent devenir plus lourdes: svn commit => system("svn commit") Heureusement avec le mod?le objet d?j? pos? cela devient plus raisonnable, comparez par exemple: svn commit => svn.commit svn info | grep '^Revision' | sed s/^Revision: // => svn.info.readlines.grep(/^Revision/)[0].sub(/^Revision: /, '').to_i
-
Exemple final: commit complet pour les lrde tools.
commande: svn lrdetools_commit 'votre sujet pour la news'
ensuite: laissez vous guider.
-