Plastic SCM es una herramienta de control de versiones distribuida comercial multiplataforma desarrollada por Códice Software Inc. Está disponible para Microsoft Windows , Mac OS X , Linux y otros sistemas operativos. Incluye una herramienta de línea de comandos, GUI nativas, herramienta de combinación y diferenciación e integración con varios IDE . Es una pila de control de versión completa que no se basa en Git (aunque puede comunicarse con él).
Desarrollador (es) | Software de codice |
---|---|
Versión inicial | 31 de octubre de 2006 |
Lanzamiento estable | 9.0 / 21 de agosto de 2020 |
Sistema operativo | Microsoft Windows , Linux , Mac OS |
Plataforma | .NET / Mono |
Tamaño | 93 MB (instalador de Windows) |
Tipo | Control de revisión |
Licencia | Propiedad |
Sitio web | www |
Características
Plastic SCM es una plataforma de pila de control de versión completa. Incluye estos componentes:
- Servidor
- Cliente de línea de comandos
- GUI
- Herramientas de diferenciación y combinación [1]
- GUI web [2]
- Interfaz de administración basada en web [3]
Algunas de sus características incluyen:
- Compatibilidad con ramificaciones y fusiones intensas: según sus creadores, Plastic puede manejar situaciones de fusión ilimitadas y complejas [4]
- Visual Branch Explorer: una línea de tiempo para representar ramas, fusiones y cambios en repositorios, implementada en todas sus GUI [5]
- Seguridad basada en ACL: todos los objetos del sistema se pueden proteger con listas de control de acceso [6]
- Combinación de 3 vías incorporada y diferenciación en paralelo, incluida la compatibilidad con el idioma y el historial de un método o función específicos [7]
- Control de versiones de directorios y soporte para cambios de nombre de versiones
- Historial de revisión de archivos ramificados, renombrados, movidos, copiados y eliminados
- Culpar / Anotar
- Operación centralizada (estilo SVN / Perforce)
- Operación distribuida (estilo Git / Mercurial)
- Confirmaciones atómicas: el servidor asegura que los conjuntos de cambios se confirman en el repositorio por completo.
- Estanterías: los usuarios pueden guardar y restaurar el trabajo en curso para cambiar de tarea
- Soporte para archivos ASCII, Unicode , binarios, enlace simbólico (en Unix), específicos de Mac y UTF-16
- Soporte para plataformas Mac OS X, Windows y Linux
- Activadores de eventos del lado del servidor y del lado del cliente [8]
- Compatibilidad con redes de alta latencia: el protocolo de red que utiliza Plastic está optimizado para redes de alta velocidad / latencia [9]
- Gluon: GUI y flujo de trabajo para no desarrolladores (especialmente centrado en el desarrollo de juegos) [10]
- Bloqueo: los archivos binarios y los activos que no se pueden combinar pueden usar el bloqueo en lugar de la ramificación / combinación [11]
Diseño
Plastic es un sistema cliente / servidor , aunque en términos actuales de control de versiones también se puede definir como un sistema de control de revisiones distribuido , debido a su capacidad para tener servidores muy ligeros en la computadora del desarrollador y empujar y tirar ramas entre servidores (similar a lo que Git y Mercurial lo hacen). Los desarrolladores trabajan en archivos en los espacios de trabajo de sus clientes y registran los archivos modificados juntos en conjuntos de cambios.
Almacenamiento
Plastic SCM tiene 2 familias diferentes de almacenamiento para todos sus datos y metadatos:
- Jet: un almacenamiento ad-hoc diseñado para alto rendimiento, lanzado con la versión 6.0. Ahora es el almacenamiento predeterminado.
- Bases de datos relacionales: Tradicionalmente, Plastic soportaba el almacenamiento de todos los datos y metadatos en bases de datos relacionales: MySQL, SQL Server, SQLite, SQL Server Compact Edition, Firebird, Firebird Embedded, Postgresql y Oracle. Las bases de datos relacionales siguen siendo compatibles, aunque Jet es ahora la opción predeterminada. [12]
Modos de operacion
El plástico puede funcionar en 2 modos:
- Centralizado: con espacios de trabajo (copias de trabajo) conectados directamente a un servidor. Los usuarios realizan operaciones de registro sin la necesidad de un paso de empuje adicional.
- Distribuido: los usuarios alojan sus propios repositorios en sus computadoras y empujan / tiran a un servidor central. [13]
Diferencias con Git
Plastic SCM no se basa en Git, aunque puede actuar como un servidor Git y un cliente Git. Las diferencias se pueden resumir en: mejoras en la fusión, soporte nativo para archivos y proyectos grandes, bloqueo de archivos opcional, puede trabajar distribuido y centralizado. También hay diferencias en la estructura de ramificación: mientras que en Git las ramas son solo punteros, en Plastic las ramas son contenedores. Los directorios de versiones plásticas y los archivos los identifican con "ID de elementos", lo que es bueno para el seguimiento de movimientos / cambios de nombre, mientras que Git se basa en diffs para reconstruir los directorios de cambios de nombre / movimientos y no versiones. [14]
Interoperabilidad con otros sistemas de control de versiones
Git
El plástico puede interoperar con Git de las siguientes formas:
- GitSync: cada cliente de Plastic puede empujar y extraer desde un repositorio de Git. [15]
- GitServer: un servidor de Plastic puede actuar como un servidor de Git, por lo que cualquier cliente de git puede empujar / tirar a un servidor de Plastic.
- Soporte de importación / exportación rápida: los comandos de exportación e importación rápida están disponibles para exportar repositorios de plástico al formato intermedio de Git e importar desde el formato intermedio de Git. [dieciséis]
Forzosamente
El plástico puede realizar una sincronización bidireccional con los depósitos de Perforce para facilitar la migración [17]
Otros controles de versión
La importación / exportación de otros sistemas se realiza a través del formato de importación / exportación rápida de Git.
Disponibilidad, ciclo de lanzamiento y plataformas compatibles
Plastic SCM está disponible para descargar desde el sitio web plasticscm.com. Las versiones principales se publican anualmente como ejecutables prediseñados para Microsoft Windows , Mac OS X y Linux . [18]
Los lanzamientos menores están disponibles semanalmente.
Licencias y condiciones de uso
Plastic SCM es gratuito para individuos (Personal Edition), organizaciones sin fines de lucro y proyectos de código abierto (Community Edition).
Cloud Edition es una versión comercial para equipos que no necesitan un servidor local. Los clientes pagan por usuario activo mensual y almacenamiento en la nube. La suscripción incluye todo el software Plastic SCM.
Team Edition es una versión comercial para equipos menores de 15 usuarios que necesitan un servidor local. Las suscripciones son mensuales o anuales e incluyen todo el software Plastic SCM.
Enterprise Edition es una versión comercial para equipos de más de 15 usuarios, generalmente utilizada por corporaciones. Se puede adquirir en modo de edición perpetua o con suscripción mensual o anual. [19]
Historia
Codice Software comenzó en agosto de 2005 con el respaldo de un inversor ángel y los fundadores. [20] El objetivo era crear un control de versiones más fuerte que SVN en ramificaciones y fusiones y más asequible para las PYME que las alternativas comerciales disponibles en ese momento. En octubre de 2006, lanzaron la primera versión de Plastic SCM y se presentó oficialmente en Tech Ed 2006 en Barcelona. [21] [22]
En 2007, Codice fue la primera pyme española en conseguir CMMI L2 utilizando SCRUM. [23]
Plastic SCM fue presentado por Novell como una de las empresas que utiliza Mono comercialmente. [24]
Plastic SCM 2.0 se lanzó en marzo de 2008. [25]
En 2009, Codice asegura su primera ronda de VC respaldada por Bullnet Capital, una firma española especializada en empresas tecnológicas. [26]
Plastic SCM fue finalista del Premio Jolt en la categoría Gestión de cambios y configuración, anunciada en diciembre de 2008. [27]
Plastic SCM 3.0 se lanzó en julio de 2010 [28] y presentaba Xdiff / Xmerge: su primer enfoque para rastrear código movido en diferencias y fusiones.
En diciembre de 2010, Plastic SCM anuncia el "historial de métodos", una función que permite al usuario calcular el historial de un método / función determinado en lugar del historial de un archivo completo. [29]
En 2011, Francisco Monteverde se incorporó a la empresa como director general, mientras que Pablo Santos, fundador, fue nombrado director de tecnología y presidente del directorio. [30]
Plastic SCM 4.0 se lanzó el 23 de noviembre de 2011 [31] [32] e introdujo un cambio importante en el diseño interno: el control de versiones y el seguimiento de fusiones se movieron de un enfoque por archivo a un enfoque por conjunto de cambios, lo que ayudó a mejorar Git más adelante -interop. [33]
Desde 4.0, Plastic comenzó a estar más orientado al desarrollo de juegos, especialmente considerando las debilidades de Git en términos de grandes repositorios y archivos. [34]
La versión 4.1 se lanzó en abril de 2012. [35]
En 2013, Codice lanza SemanticMerge, una herramienta que diferencia y fusiona según la estructura del código y no el texto. [36] La tecnología se integró más tarde dentro de Plastic. Semantic se basa en el trabajo anterior realizado en la herramienta Xdiff / Xmerge. Más tarde ese mismo año, Semantic agregó soporte para Java para complementar la oferta inicial de .NET. [37] Pablo Santos introdujo la detección de fusiones y diferencias entre archivos en QCon 2013 en San Francisco. [38]
En 2013, Plastic SCM comenzó a admitir de forma nativa el protocolo de red Git, que prácticamente convierte cualquier instalación de Plastic en un cliente Git. [39]
Plastic SCM 5.0 se lanzó en septiembre de 2013. [40] Presenta diferencias semánticas integradas, detección de refactores [41] e historial de métodos. [42] Otras características son la seguridad basada en rutas, listas de cambios de clientes y reglas encubiertas mejoradas.
Posteriormente, la versión 5.4 amplía algunas de estas características y agrega algunas más: servidores cifrados, JavaCLI (un cliente Java para admitir secuencias de comandos de HP-UX y Solaris), carga y descarga de archivos de múltiples núcleos, Plastic Gluon (desarrollado en colaboración con Telltale [43 ] ), una GUI para artistas en el desarrollo de juegos, transferencia de datos optimizada para WAN, submódulos, espacios de trabajo transformables. Plastic 5.4 evoluciona como la versión principal de Plastic y en diciembre de 2014 se lanza una nueva GUI nativa para Linux que reemplaza la anterior multiplataforma. [44] 5.4 también incluye una nueva GUI nativa de MacOS.
En enero de 2016, Plastic Cloud se lanzó como un sistema de alojamiento de repositorios en la nube. [45]
En marzo de 2016, se lanzó Plastic Cloud Edition, una nueva versión diseñada para equipos que no necesitan un servidor local. [46]
La versión 6.0 finalmente se lanzó en enero de 2017. [47] Cuenta con un nuevo sistema de almacenamiento de datos llamado Jet, compatibilidad total con versiones anteriores hasta 5.0 y soporte de licencias flotantes. 6.0 continúa evolucionando durante 2017.
Plastic SCM 7.0 se lanzó en marzo de 2018 [48], incluido un nuevo diseño de Branch Explorer, una nueva interfaz de administración basada en web y mejoras en las GUI de MacOS y Linux.
La función mergebots se lanzó en septiembre de 2018. Los mergebots son una forma de implementar DevOps con agentes del lado del servidor que detectan cuándo las ramas deben fusionarse después de probarlas en un sistema de CI. [49] Plastic SCM 8.0 se lanzó en enero de 2019.
El 17 de agosto, se reveló que Unity Technologies , los creadores del motor de juego Unity , habían adquirido Codice Software. [50] [51]
Ver también
- Lista de software de control de revisiones
- Comparación de software de control de revisiones
Notas
- ^ XDIFF Y XMERGE
- ^ WebUI: interfaz web rediseñada para Plastic
- ^ webadmin: presentamos la nueva herramienta de administración del servidor
- ^ mergeMachine
- ^ Explorador de sucursales
- ^ SEGURIDAD
- ^ Control de versiones semánticas
- ^ GUÍA DE DISPARADORES
- ^ Canal de red optimizado para alta latencia
- ^ Gluon: control de versiones para artistas
- ^ GUÍA DEL ADMINISTRADOR DE PLASTIC SCM: Capítulo 7: Configuración de pago exclusivo (bloqueo)
- ^ La historia de Jet: almacenamiento de repositorios súper rápido de Plastic
- ^ Plástico SCM - DVCS a nivel empresarial
- ^ Plastic SCM vs Git - edición 2018
- ^ GitSync para Plastic SCM con protocolos nativos de Git y compatibilidad con Visual Studio 2012
- ^ ASPECTOS DESTACADOS DE PLASTIC SCM PARA USUARIOS DE GIT
- ^ [referencia: https://www.plasticscm.com/perforce Plastic SCM para equipos de Perforce]
- ^ Miguel de Icaza en Plastic SCM UI en Linux y Mac OS X
- ^ Principales actualizaciones de PlasticSCM
- ^ LinkedIn: Pablo Santos
- ^ SIMO 2006
- ^ Plástico SCM - DVCS a nivel empresarial Plástico SCM - DVCS a nivel empresarial
- ^ Codice Software muestra una nueva herramienta SCM
- ^ Empresas que utilizan Mono
- ^ Plastic SCM 2.0 establecido para proyectos de desarrollo paralelo
- ^ Innova.- La entidad de capital riesgo Bullnet Capital entra en el accionariado de la vallisoletana Códice Software
- ^ Los productos Embarcadero son finalistas del Premio Jolt en varias categorías
- ^ Codice incluye XMerge / XDiff 2.0 en versión Plastic SCM
- ^ Anunciando el historial del método
- ^ Francisco Monteverde se convierte en el nuevo CEO de Códice Software
- ^ Lanzamiento de Plastic SCM 4.0: nuevas funciones en Plastic SCM 4.0 por Pablo Santos
- ^ Codice Software lanza Plastic SCM 4.0; Desafíos Git y Perforce en DVCS
- ^ Partes internas de plástico: de 3.0 a 4.0
- ^ Codice Software presenta Plastic SCM 4.0 para el desarrollo de juegos, colaboración exitosa con Digital Legends Entertainment
- ^ Plastic SCM presta atención a los detalles en la gestión del código fuente
- ^ Una herramienta de combinación que comprende funciones
- ^ Codice agrega compatibilidad con Java a su herramienta de combinación con reconocimiento de código
- ^ InfoQ - QCon San Francisco 2013 - Refactorización en la era DVCS - Ingrese la fusión semántica
- ^ GitSync para Plastic SCM con protocolos nativos de Git y compatibilidad con Visual Studio 2012
- ^ Hoy salen dos nuevas versiones de Plastic SCM
- ^ Control de versiones semánticas
- ^ Características de Plastic SCM
- ^ Cómo Telltale Games maneja el control de versiones
- ^ GUI nativa de Linux - gtkplastic
- ^ ¡ Plastic Cloud ya está disponible!
- ^ Edición de Plastic SCM Cloud
- ^ Versión 6.0.16.804
- ^ Versión 7.0.16.2047
- ^ ¡ Agregue un mergebot a su repositorio!
- ^ "Unity adquiere Codice Software para administrar flujos de trabajo 3D" . VentureBeat . 2020-08-17 . Consultado el 17 de agosto de 2020 .
- ^ Barton, Seth (17 de agosto de 2020). "Unity adquiere el desarrollador de Plastic SCM Codice Software | Noticias de desarrollo" . MCV / DESARROLLO . Consultado el 17 de agosto de 2020 .
Referencias
- Krill, Paul (24 de marzo de 2008), "Plastic SCM 2.0 establecido para proyectos de desarrollo paralelo" , InfoWorld , consultado el 14 de marzo de 2012
- Feinman, Jeff (2009-12-01), "Codice se ramifica con una nueva versión de la herramienta SCM" , SD Times , consultado el 14 de marzo de 2012
- Norfolk, David (30 de julio de 2007), "Codice Software muestra una nueva herramienta de SCM" , The Register , consultado el 14 de marzo de 2012
- Serignese, Katie (2010-07-15), "Códice incluye XMerge / xdiff 2.0 en la liberación de Plastic SCM" , SD Times , recuperada 2012-03-14
- McConnel, Toni (2010-04-27), "ESC - Embed-X incorpora el primer marco de desarrollo ágil para procesos de software críticos" , EE Times , consultado el 14 de marzo de 2012
- Santos, Pablo (2007-08-02), "SCRUM Meets CMMi" , Dr. Dobb's Journal , consultado el 14 de marzo de 2012