Blog créé grâce à Iblogyou. Créer un blog gratuitement en moins de 5 minutes.

travail collaboratif

Publié le Mercredi 30 Mars 2011 à 18:50:25

Avec l'arrivée des logiciels libres et leur développement communautaire, une autre façon de voir la gestion de versions est apparue. Cette autre vision consiste à voir l'outil de gestion de versions comme un outil permettant à chacun de travailler à son rythme, de façon désynchronisée des autres, puis d'offrir un moyen à ces développeurs de s'échanger leur travaux respectifs. C'est ce que l'on nomme la gestion de versions décentralisée.

Mercurial, Darcs, Bazaar, Git, Monotone, GNU Arch et BitKeeper (propriétaire) sont des logiciels de gestion de versions décentralisée. Avec ceux-ci, il existe plusieurs dépôts de versions et aucun n'a de statut privilégié.

Avantages de la Gestion de version décentralisée :

*                     permet aux contributeurs de travailler sans être connecté au gestionnaire de version,

*                     la plupart des opérations sont plus rapides car réalisée en local (sans accès réseau),

*                     permet la participation à un projet sans nécessiter les permissions par un responsable du projet (les droits de commit peuvent donc être donnés après avoir démontré son travail et non pas avant),

*                     permet le travail privé pour réaliser des brouillons sans devoir publier ses modifications et gêner les autres contributeurs,

*                     permet de ne pas être dépendant d'une seule machine comme point de défaillance,

*                     permet toutefois de garder un dépôt de référence contenant les versions livrées d'un projet

Désavantages :

*                     cloner un dépôt est plus long que récupérer une version pour une gestion de version décentralisée car tout l'historique est copié (ce qui est toutefois un avantage par la suite).

*                     il n'y a pas de système de lock (ce qui peut poser des problèmes pour des données binaires qui ne se mergent pas)

L'auteur de développement logiciel Joel Spolsky décrit la gestion de version décentralisée comme "probablement la plus grande avancée dans les technologies de développement logiciel dans les 10 [dernières] années."

Ecrire un commentaire - Permalien - Partager
Publié le Mercredi 30 Mars 2011 à 19:00:48

Avec l'arrivée des logiciels libres et leur développement communautaire, une autre façon de voir la gestion de versions est apparue. Cette autre vision consiste à voir l'outil de gestion de versions comme un outil permettant à chacun de travailler à son rythme, de façon désynchronisée des autres, puis d'offrir un moyen à ces développeurs de s'échanger leur travaux respectifs. C'est ce que l'on nomme la gestion de versions décentralisée.

Mercurial, Darcs, Bazaar, Git, Monotone, GNU Arch et BitKeeper (propriétaire) sont des logiciels de gestion de versions décentralisée. Avec ceux-ci, il existe plusieurs dépôts de versions et aucun n'a de statut privilégié.

Avantages de la Gestion de version décentralisée :

*                     permet aux contributeurs de travailler sans être connecté au gestionnaire de version,

*                     la plupart des opérations sont plus rapides car réalisée en local (sans accès réseau),

*                     permet la participation à un projet sans nécessiter les permissions par un responsable du projet (les droits de commit peuvent donc être donnés après avoir démontré son travail et non pas avant),

*                     permet le travail privé pour réaliser des brouillons sans devoir publier ses modifications et gêner les autres contributeurs,

*                     permet de ne pas être dépendant d'une seule machine comme point de défaillance,

*                     permet toutefois de garder un dépôt de référence contenant les versions livrées d'un projet

Désavantages :

*                     cloner un dépôt est plus long que récupérer une version pour une gestion de version décentralisée car tout l'historique est copié (ce qui est toutefois un avantage par la suite).

*                     il n'y a pas de système de lock (ce qui peut poser des problèmes pour des données binaires qui ne se mergent pas)

L'auteur de développement logiciel Joel Spolsky décrit la gestion de version décentralisée comme "probablement la plus grande avancée dans les technologies de développement logiciel dans les 10 [dernières] années."

Afficher les 3 commentaires. Dernier par larbi khaoula le 05-04-2011 à 22h48 - Permalien - Partager
Logiciels de gestion de versions par: larbi khaoula Publié le Mercredi 30 Mars 2011 à 19:06:49

  • CVS
  • Subversion : http://subversion.tigris.org
  • Visual SourceSafe (Société Microsoft)
  • Perforce (Perforce est un outil de gestion de configuration utilisé dans le processus de développement logiciel.)
  • ClearCase (Société Rational Software/IBM)
  • PVCS(Dimensions): http://www.serena.com/
  • SCCS
  • RCS
  • GNU (GNU est un système d'exploitation composé exclusivement de logiciels libres.) Arch : http://www.gnu.org/software/gnu-arch/
  • Bazaar : http://bazaar.canonical.com (compatible avec GNU Arch) et son lointain descendant Bazaar-ng : http://www.bazaar-ng.org
  • Synergy ( Synergy est la traduction ango-saxonne du mot synergie Dans l'industrie de l'informatique, Synergy peut faire référence à la marque commerciale d'un logiciel: voir Synergy (logiciel) Dans l'industrie des télécommunications, Synergy peut faire référence au nom d'une société américaine qui réalise des...) (Société Telelogic)
  • Bitkeeper (BitKeeper est un logiciel de gestion de version.)
  • SCM Surround (Société Seapine)
  • DaRCS : http://www.darcs.net/
  • git (git est un gestionnaire de code source qui fait partie des nombreux systèmes de gestion de versions. Il a été créé par Linus Torvalds, le créateur de Linux, et est distribué sous la GNU GPL version 2. C'est donc un logiciel libre.), utilisé entre autres pour le noyau GNU/linux
  • Mercurial : http://www.selenic.com/mercurial
  • So6, logiciel de gestion de configuration (La gestion de configuration consiste à gérer la description technique d'un système[1] (et de ses divers composants), ainsi qu'à gérer l'ensemble des modifications apportées au cours de l'évolution du système. La gestion de configuration est utilisée pour la gestion de systèmes complexes :) de LibreSource
  • MECASP, gestion de versions et fusion (En physique et en métallurgie, la fusion est le passage d'un corps de l'état solide vers l'état liquide. Pour un corps pur, c’est-à-dire pour une substance constituée de molécules toutes identiques, la fusion s'effectue à température constante. La température de fusion ou de solidification d'un...) de variantes : http://mecasp.free.fr
  • SVK, basé sur le système de fichier ( Un fichier est un endroit où sont rangées des fiches. Cela peut-être un meuble, une pièce, un bâtiment, une base de données informatique. Par exemple : fichier des patients d'un médecin, fichier des ouvrages dans une bibliothèque, fichier du grand banditisme. (voir fichage) En informatique, un...) de Subversion : http://svk.elixus.org/
  • MKS : http://www.mks.com/
  • Vault (Société SourceGear)
  • Monotone
  • ALDON Lifecycle Manager (Société ALDON): http://www.aldon.fr
  • JediVCS http://jedivcs.sourceforge.net/
Afficher les 4 commentaires. Dernier par Messoud Samar le 05-04-2011 à 01h46 - Permalien - Partager
But d'usage de gestion de version par:larbi khaoula Publié le Mercredi 30 Mars 2011 à 19:22:34

Un logiciel de gestion de versions est un logiciel de gestion de configuration permettant de stocker des informations pour une ou plusieurs ressources informatiques permettant de récupérer toutes les versions intermédiaires des ressources, ainsi que les différences entre les versions.
Un logiciel de gestion de versions agit sur une arborescence de fichiers afin de conserver toutes les versions des fichiers, ainsi que les différences entre les fichiers. Ce système permet par exemple de mutualiser un développement. Un groupe de développeurs autour d'un même développement se servira de l'outil pour stocker toute évolution du code source.

Utilité des systèmes de gestion de version :

*Accès concurrentiel par plusieurs développeurs

*Suivi de l’historique

*Visualisation des déférences

*Retour `a des anciennes versions

Afficher le commentaire. Dernier par groupe_c2i le 31-03-2011 à 11h35 - Permalien - Partager
Publié le Mercredi 30 Mars 2011 à 19:41:15

Avantages et inconvénients

Centralisé

  • Peu adapté aux grands effectifs.
  • Haute disponibilité du serveur contenant le dépôt nécessaire.
  • Risques plus élevés pour l'intégrité du dépôt.
  • Infrastructure requise pour mettre en place un dépôt commun.
  • Moins d'organisation humaine requise vu qu'il n'y a qu'un seul dépôt.
  • Ne peut pas etre distribué.
  • Plus facile a prendre en main : les étapes pour un cycle de développement sont moindre.

Utilisez un système centralisé pour une petite équipe rigoureuse pouvant être connectée au serveur en permanence et ne pouvant pas se permettre de passer du temps quant à l'organisation pour fusionner les dépôts.

Distribué

  • Adapté aux grands effectifs.
  • Pas de contrainte de disponibilité du serveur.
  • Risques réduits pour l'intégrité du dépôt final.
  • Pas de contrainte d'infrastructure car il n'y a pas nécessité d'avoir un dépôt commun.
  • Peut être centralisé, mais demande plus d'organisation humaine pour fusionner les différents dépôts dans un dépôt commun.
  • Plus difficile à prendre en main de part les possibilités et les étapes nécessaires a un cycle de développement.

Utilisez un système distribué pour une équipe aussi bien petite que grande, possédant la rigueur nécessaire a une hiérarchisation des dépôts et/ou ayant des contraintes de travail ne permettant pas d'être connectée en permanence avec un éventuel serveur.

Spécificités

  • Possibilité de renommer un fichier ou dossier sans en perdre l'historique (contrairement à CVS).
  • Les méta-donnees sont versionnées.
  • Historique de ce qui a été fait, par qui et quand.
  • Système de branches.
  • Visualisation des differences entre deux révisions d'un même fichier ou dossier.
  • Système de scripts pour chaque étape possible de l'utilisation du SCM (pre-ommit, post-commit, pre-status, etc...)
Afficher les 2 commentaires. Dernier par Messoud Samar le 05-04-2011 à 01h42 - Permalien - Partager