plastic scm_1

12
PLASTIC SCM Plastic SCM es un sistema de control de versiones distribuido propietario desarrollado por la empresa española Códice Software. Como objetivos fundamentales, Plastic trata de dar un mayor soporte al desarrollo paralelo, creación de ramas, integración (merge) de ramas, seguridad y desarrollo distribuido. Soporte de branching (Para el desarrollo en paralelo) Para favorecer el desarrollo paralelo, Plastic se centra en dar soporte al branching, que consiste en dividir el desarrollo en distintas ramas, siguiendo una determinada política de uso, protección, desprotección, contenidos, etc. La principal diferencia entre el modelo de branching de plastic y los otros modelos implementados (CVS, Perforce o Team Foundation Server estriba) en que en lugar de realizar una copia de todo (o solamente de los metadatos) a cada nueva rama que se genera, las ramas son creadas como objetos vacíos. Solamente cuando un ítem es modificado, la nueva revisión creada es asignada a la rama. De este modo la rama contiene solamente ficheros y directorios que se han modificado o creado con respecto a su rama padre. Este enfoque permite crear muchas ramas de forma sencilla, haciendo posible la implementación de patrones de branching como por ejemplo el de “rama por tarea”, (detallado en el libro SCM patterns (referencia) y en CM Crossroads (referencia)). Debido al soporte que la infraestructura del modelo de branching de plastic aporta, este sistema puede manejar miles de ramas en un solo repositorio sin perdida notable en el rendimiento. Explorador de ramas. El explorador de ramas es una interfaz de usuario que dibuja todas las ramas de un repositorio. Ademas representa las relaciones de fusión (merge) entre ramas y las relaciones de herencia. El explorador de ramas fue introducido por primera vez en la versión 1.5 y ha sido progresivamente mejorado desde entonces. En

Upload: mark07

Post on 11-Jan-2016

5 views

Category:

Documents


0 download

DESCRIPTION

Resumen

TRANSCRIPT

Page 1: Plastic Scm_1

PLASTIC SCM

Plastic SCM es un sistema de control de versiones distribuido propietario desarrollado por la empresa española Códice Software. Como objetivos fundamentales, Plastic trata de dar un mayor soporte al desarrollo paralelo, creación de ramas, integración (merge) de ramas, seguridad y desarrollo distribuido.

Soporte de branching (Para el desarrollo en paralelo)

Para favorecer el desarrollo paralelo, Plastic se centra en dar soporte al branching, que consiste en dividir el desarrollo en distintas ramas, siguiendo una determinada política de uso, protección, desprotección, contenidos, etc. La principal diferencia entre el modelo de branching de plastic y los otros modelos implementados (CVS, Perforce o Team Foundation Server estriba) en que en lugar de realizar una copia de todo (o solamente de los metadatos) a cada nueva rama que se genera, las ramas son creadas como objetos vacíos. Solamente cuando un ítem es modificado, la nueva revisión creada es asignada a la rama.

De este modo la rama contiene solamente ficheros y directorios que se han modificado o creado con respecto a su rama padre.

Este enfoque permite crear muchas ramas de forma sencilla, haciendo posible la implementación de patrones de branching como por ejemplo el de “rama por tarea”, (detallado en el libro SCM patterns (referencia) y en CM Crossroads (referencia)).

Debido al soporte que la infraestructura del modelo de branching de plastic aporta, este sistema puede manejar miles de ramas en un solo repositorio sin perdida notable en el rendimiento.

Explorador de ramas.

El explorador de ramas es una interfaz de usuario que dibuja todas las ramas de un repositorio. Ademas representa las relaciones de fusión (merge) entre ramas y las relaciones de herencia.

El explorador de ramas fue introducido por primera vez en la versión 1.5 y ha sido progresivamente mejorado desde entonces. En la versión 2.0 se introdujo soporte interactivo, de este modo las operaciones comunes entre ramas como por ejemplo la creación, merging o ejecucion de consultas comunes pueden ser realizadas desde el propio explorador.

El explorador dibuja:

Enlaces de merge

Enlaces de parentesco entre ramas (herencia)

Etiquetas

El explorador permite visualizar los cambios realizados en las ramas o enlos conjuntos de cambios.

Page 2: Plastic Scm_1

Árbol de revisiones en 3D

Plastic provee mecanismos para visualizar arboles de revisiones de archivos y directorios. El árbol de revisiones 3D muestra la evolución de un fichero o directorio dado, incluyendo enlaces de las operaciones de merge sufridas (las flechas verdes). Otro tipo de información incluida son las etiquetas y demás datos adicionales.

Mas recientemnte se han introducido nuevos tipos de información:

Merges regulares (Los representados en verde) Merges de intervalo (también conocidos como cherry picks): se representa tanto el

intervalo como el merge. Merges substractivos Operaciones de inversión

Directory Versioning

Plastic soporta directory versioning. Tanto renombrado como cambios de ubicación de los directoriostambien están soportados.

Seguimiento de merge.

Cada vez que se realiza una operación de merge, se crea un vinculo entre las revisiones origen y destino de la fusión. Tal vinculo es importante no solo para visualizar el proceso (mostrado en el árbol antes descrito), sino también para que plastic lo utilice internamente en las siguientes operaciones de merge.

Cuando se funde una rama, se crean vínculos de merge, para que si se vuelve a intentar realizar el merge de nuevo plastic notifique que no quedan fusiones que realizar.

Herramientas de merge y de diferencias

Plastic incluye las siguientes herramientas:

Diferencias en el código: permite identificar las diferencias entre dos revisiones de un mismo fichero. Incluye una opción para resaltar la sintaxis.

Diferencias en imágenes: Se soportan dos modos:

Extremo a extremo o mezclando las dos revisiones a comparar.

Merge de código: herramienta de merge a tres bandas en el que intervienen la revisión de origen, de destino y la revisión anterior a la modificación.

Merge binario: permite seleccionar entre revisiones de un ficherobinario.

Page 3: Plastic Scm_1

Diferencias y merge entre directorios: Debido a que plastic SCM da soporte total a los directorios, existen también interfaces graficas específicas para ellos.

Seguridad basada en listas de control de acceso (ACL)

Cada objeto ubicado en un repositorio de plastic tiene una lista de control de acceso (Acces Control List, ACL en inglés) asociada. Se incluyen unos 25 tipos de permisos diferentes para permitir o denegar operaciones como por ejemplo protecciones, desprotecciones, fusiones, aplicación de etiquetas, creación de repositorio o espacios de trabajo, etc.

Base de datos de backend configurable.

Plastic almacena toda su información y metadatos en bases de datos. Actualmente (versión 2.0). Plastic soporta:

MYSQL (5.0 y siguientes) SQL Server (2005 y siguientes) Firebird (tanto la configuración embebida como la de servidor. Esta última ofrece un

mayor rendimiento)

Plastic utiliza 3 tipos de bases de datos diferentes:

Base de datos de repositorios: Almacena información relativa a los repositorios alojados en un servidor determinado.

Base de datos rep_xxx: una base de datos por repositorio (xxx seria un numero en tal caso) Base de datos de espacios de trabajo: Almacena información relativa a los ficheros y

directorios en los cuales trabaja el equipo de desarrollo. En lugar de utilizar directorios ocultos en el espacio de trabajo (workspace) conteniendo información relativa a la copia actual, como hace SVN o CVS, Plastic almacena esta información en ese servidor.

Las bases de datos pueden consultarse directamente mediante herramientas externas o utilizando el comando de consultas que el propio plastic ofrece (cm query)

Por defecto plastic desplega una base de datos Firebird tanto en Windows como en Linux. Esta solución funciona razonablemente bien n entornos pequeños y medianos.

MYSQL y SQL Server tienen mejor desempeño en entornos con grandes cargas de trabajo, aportando a plastic una escalabilidad mayor.

Espacios de trabajo configurables

Un espacio de trabajo es un directorio donde se mapean los contenidos del repositorio. Para seleccionar exactamente que debe descargarse en el disco del usuario. Cada espacio de trabajo

Page 4: Plastic Scm_1

tiene un selector asociado. Este selector es bastante similar al config_spec de ClearCase, proporcionando múltiples posibilidades de personalización.

Arquitectura de almacenamiento:

Centralizados:

Existe un repositorio centralizado de todo el código, del cual es responsable un único usuario (o un conjunto de ellos). Se facilitan las tareas administrativas a cambio de reducir flexibilidad, pues todas las decisiones fuertes (como crear una nueva rama) necesitan la aprobación del responsable

Distribuidos:

Cada usuario tiene su propio repositorio. Los distintos respositorios pueden intercambiar y mezclar revisiones entre ellos. Es frecuente el uso de un repositorio, que esta normalmente disponible, que sirve de punto de sincronización de los distintos repositorios locales.

Links.

https://juanoviedo.files.wordpress.com/2010/09/control-de-versiones.pdf

http://codicesoftware.blogspot.com/2010/11/version-control-timeline.html

http://www.infoq.com/articles/PlasticSCM

http://codicesoftware-es.blogspot.com/2010/11/la-historia-del-control-de-versiones.html

https://www.plasticscm.com/documentation/administration/plastic-scm-version-control-administrator-guide.shtml

Page 5: Plastic Scm_1

https://www.plasticscm.com/documentation.html

http://codicesoftware.blogspot.com/2010/12/new-manual-introduction-to-plastic-scm.html

https://www.plasticscm.com/documentation/user/plastic-scm-version-control-introduction-guide.shtml

https://www.plasticscm.com/documentation/user/plastic-scm-version-control-introduction-guide.shtml

https://es.wikipedia.org/wiki/Plastic_SCM

https://www.plasticscm.com/features/index.html

https://prezi.com/explore/search/?search=Sistemas+de+control+de+versiones#search=Sistemas+de+control+de+versiones&reusable=false&page=1&users=less

https://www.facebook.com/PlasticSCM

https://prezi.com/sxblvfnijwr2/versiones-serena-dimensions/

https://prezi.com/ik9eldx4ykic/versionado-de-software-y-documentos/

https://prezi.com/ogzkd2f1qgoj/introduccion-al-tortoise-svn/

https://prezi.com/e7k5zclnjjvt/control-de-versiones-en-bases-de-datos/

https://prezi.com/q2p4agtu1kws/control-de-versiones/

https://prezi.com/vjvyj-oangto/metodologia-control-de-versiones/

https://prezi.com/tuqifpcirncw/cvssistema-control-versiones/

https://prezi.com/mrzpodml7low/plan-de-software-y-control-de-versiones/

https://prezi.com/4lj6_yhenril/presentacion-eas/

Plastic SCM

Page 6: Plastic Scm_1

Introducción

Si bien es cierto el mundo ha venido mostrando gran auge en cuanto a cambios de uso de la tecnología, hoy en día, las herramientas de versionamiento de Software se han venido desarrollando cada vez más, a la misma vez formando parte del día a día no solo de los desarrolladores sino también hasta de gerentes. En la actualidad, mantener un código ordenado y bien administrado es un gran reto que todas las compañías de desarrollo buscan solventar. Los diferentes Softwares o plataformas que proporcionan una solución como lo es Plastic SCM han logrado revolucionar el mercado del versionamiento de Software, ofreciendo diferentes herramientas innovadoras tales como ramificación avanzada y en 2D de todos los cambios que se le realizan al repositorio, herramientas individuales que proporcionan uniones de código donde podríamos llegar a pensar que la herramienta tiene por sí sola algún tipo de inteligencia artificial. En general el control de versiones para muchas compañías es tan importante como su equipo de trabajo ya que mediante esto se puede lograr la clave del éxito de los proyectos.

Plastic Source Control Manager

Plastic SCM, es un software español de control de versiones de gran potencial que contiene funcionalidades internas que hacen que este destaque ante todos los sistemas de su tipo. Plastic SCM trata de dar un ambiente de versionamiento en paralelo, brindando posibilidad al usuario de crear ramas, merge de los binarios y además proporcionar seguridad a las fuentes almacenadas en sus repositorios de binarios que ofrecen a los usuarios la posibilidad de interactuar y mantener de una forma segura los datos.

Plastic SCM consta de aproximadamente más de 400 mil líneas de código realizadas por un pequeño grupo de desarrolladores, los cuales mediante su amplia experiencia han logrado realizar un software de versionamiento que ha dejado atrás a grandes competidores con muchos años en el mercado.

El equipo de Plastic utilizó SCRUM en el desarrollo de la aplicación, aplicando 83 sprints en la revisión de este proyecto, sin embargo, estos números siguen creciendo con cada entrega.

Información general

Fundación: 2005.Productos: Plastic SCM & Semantic Merge.Clientes: desde pequeños grupos (+5 desarrolladores) a más grandes grupos de desarrolladores (cientos).Sedes: Valladolid (España) & Sillicon Valley Office.Distribución: España, US, Canada, Unión Europea, Israel, Korea del Sur.

Plastic es una herramienta que provee valor a los diferentes roles como lo son los desarrolladores que aman la libertad de distribuir, simple ramificación y fusión. Para

Page 7: Plastic Scm_1

gerentes que lideran equipos distribuidos, gestionan el acceso y comprenden el estado del proyecto. Para los constructores de liberaciones que necesitan crear versiones de software estables.

Es un herramienta multiplataforma que puede ejecutar clientes y servidores en Windows, Linux y Mac OS X, y también hay soluciones para otras plataformas Unix.

Windows: Todas las versiones de Windows son compatibles, incluyendo Windows 7, 8 y todas las variantes de servidor. De hecho, conservan un antiguo servidor de Windows 2000 para ejecutar pruebas de GUI y CLI en una base diaria, todos los instaladores y paquetes se encuentran disponibles en la página de descargas de Plastic.

Linux: Se puede instalar Plastic en servidores y clientes (incluyendo GUI) en diferentes versiones de Linux. Existen paquetes para las distribuciones más comunes y también un instalador universal.

Mac OS X: Mac OS 10.7 y superior son totalmente compatibles para ejecutar ambos clientes (incluyendo GUI) y servidores. Plastic dejó de soportar procesadores basados en arquitectura PowerPC. 

Características de Plastic

1. Repositorios totalmente distribuidos o centralizados.2. Crear ramas y fusionarlas de manera simple.3. Poderosa interfaz gráfica de usuario.4. Gestión de la seguridad del código fuente.5. Repositorio de almacenamiento fiable y escalable con el sistema de gestión de bases de datos relacionales de su elección.

El más grande reto de Plastics antes sus competidores ha sido la creación de una herramienta que se integra a Plastic llamada Xmerge/Xdiff, la cual detecta código movido en las diferencias de manera inteligente, por ejemplo si se edita un archivo y se mueve un trozo de código de sitio Plastic seguirá sabiendo de donde viene, además es capaz de hacerlo con las uniones de código también.

Integración con diferentes herramientas

Plastic SCM logra su integración con diferentes herramientas y productos de diferentes ramas. Entre estas están:

Seguimiento de Incidencias y Gestión de Proyectos Version OneBugzillaDevTrackDesarrolloVisual StudioEclipseVisual Fox Pro

Page 8: Plastic Scm_1

Bases de DatosSQLServerORACLEFirebird ServerHerramientas de IntegraciónCruise ControlPulseTeamCityOtrosRed GatePolarionClarive

Licencias y precios

Tipo de LicenciaPrecioLicencia Perpetua595USD/DesarrolladorLicencia de Suscripción279USD/Año/Desarrollador

Clientes que utilizan Plastic

Microsoft.Samsung.Sony.DHL.US Army.Harvard University.Activision.HP.Siemens.

Las descargas de Plastic son hechas en más de 140 países, han sido más de 12,000 descargas en un periodo de años que va del 2011 al 2014.

Conclusión

Después de realizar un estudio comparativo de ciertas herramientas, encontré esta herramienta que ofrecía esa capacidad en especial, además de muchas otras más que la hicieron sobresalir, dando flexibilidad y facilidad a la hora de manejar un esquema de control de fuentes.

Page 9: Plastic Scm_1

Entre las características más importantes que ofrece la herramienta, me parece que podría indicar el manejo de ramas inteligentes, árbol de revisions 3D, una ponderosa herramienta de union de código entre proyectos y su utilización en bases de datos distintas. 

Referencias

Blog : http://codicesoftware.blogspot.com/Forum : http://www.plasticscm.net/Twitter : https://twitter.com/plasticscmYouTube : http://www.youtube.com/user/codicesoftwareFlickr : http://www.flickr.com/photos/plasticscmFacebook : https://www.facebook.com/PlasticSCM

https://www.plasticscm.com/testimonial.html#rewardy

https://es.wikipedia.org/wiki/Plastic_SCM

https://sites.google.com/site/mergenarios222/

http://www.buenastareas.com/ensayos/Plastic-Scm/67578334.html

http://codicesoftware-es.blogspot.com/2010/07/acabamos-de-lanzar-plastic-scm-30.html

http://www.mkm-pi.com/developer/gestion-de-configuracion-lo-mejor-en-branching-and-merging/